Skip to content

Commit 25fa75b

Browse files
committed
fluentbit ES ingest pipeline
1 parent f105490 commit 25fa75b

File tree

4 files changed

+49
-10
lines changed

4 files changed

+49
-10
lines changed
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
function add_timestamp(tag, timestamp, record)
2+
if record["@timestamp"] == nil then
3+
local seconds = timestamp[1]
4+
local formatted_time = os.date("!%Y-%m-%dT%H:%M:%S", seconds) .. string.format(".%03dZ", timestamp[2]/1000000)
5+
record["@timestamp"] = formatted_time
6+
end
7+
8+
return 1, timestamp, record
9+
end

config/fluentbit_server/fluent-bit.conf

Lines changed: 24 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
HTTP_Port 2020
99
Health_Check On
1010

11-
# HTTP INPUT FOR LOGS
1211
[INPUT]
1312
Name http
1413
Listen 0.0.0.0
@@ -21,16 +20,33 @@
2120
Key_Name log
2221
Parser json_parser
2322
Preserve_Key On
23+
24+
[FILTER]
25+
Name lua
26+
Match http.logs
27+
Script /fluent-bit/etc/add_timestamp.lua
28+
Call add_timestamp
29+
30+
[FILTER]
31+
Name lua
32+
Match http.logs
33+
Script /fluent-bit/etc/set_target_index.lua
34+
Call set_target_index
2435

2536
[OUTPUT]
2637
Name es
2738
Match http.logs
28-
Host sentinel-kit-db-elasticsearch
39+
Host sentinel-kit-db-elasticsearch-es01
2940
Port 9200
30-
Index essai
31-
Logstash_Format Off
32-
Retry_Limit False
33-
Type _doc
34-
Time_Key @timestamp
41+
Logstash_Format On
42+
Logstash_Prefix_Key target_index
43+
Logstash_DateFormat %Y.%m.%d
44+
Type _doc
45+
Time_Key @timestamp
3546
Replace_Dots On
36-
Suppress_Type_Name On
47+
Suppress_Type_Name On
48+
Retry_Limit False
49+
TLS On
50+
TLS.Verify Off
51+
HTTP_User elastic
52+
HTTP_Passwd ${ELASTIC_PASSWORD}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
function set_target_index(tag, timestamp, record)
2+
local exit_code = 0
3+
4+
if record["target_index"] == nil then
5+
record["target_index"] = "undefined-index"
6+
exit_code = 1
7+
end
8+
9+
return exit_code, timestamp, record
10+
end

docker-compose.yml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,10 +54,14 @@ services:
5454
container_name: sentinel-kit-server-fluentbit
5555
image: fluent/fluent-bit:latest
5656
restart: on-failure
57+
environment:
58+
- ELASTIC_PASSWORD=${ELASTICSEARCH_PASSWORD}
5759
volumes:
58-
- ./config/fluentbit_server/fluent-bit.conf:/fluent-bit/etc/fluent-bit.conf
59-
- ./config/fluentbit_server/parsers.conf:/fluent-bit/etc/parsers.conf
60+
- ./config/fluentbit_server:/fluent-bit/etc
6061
- ./data/log_ingest_data:/var/log:ro
62+
ports:
63+
- "24224:24224"
64+
- "24224:24224/udp"
6165
networks:
6266
- sentinel-kit-network
6367
depends_on:

0 commit comments

Comments
 (0)