Fluent Bit
Пример настройки потока данных с внешним сервисом сбора логов - "Fluent Bit".
Такой инструмент, как Fluent Bit способен обрабатывать различные форматы. Ниже рассмотрен прием UDP syslog и чтение локального лога файлов docker (см. подробнее о других способах приема данных).
Схема отправки данных в Monq:
-
На стороне Monq создайте два потока данных и скопируйте их API-ключи.
-
Сконфигурируйте Fluent Bit следующим образом:
cat /etc/td-agent-bit/td-agent-bit.conf
[SERVICE]
flush 5
daemon Off
log_level info
parsers_file parsers.conf
plugins_file plugins.conf
http_server On
http_listen 0.0.0.0
http_port 2020
storage.metrics on
@INCLUDE inputs.conf
@INCLUDE outputs.conf
@INCLUDE filters.confcat /etc/td-agent-bit/inputs.conf
[INPUT]
Name syslog
Parser syslog-rfc3164
Listen 0.0.0.0
Port 514
Mode udp
Tag syslog
[INPUT]
Name tail
Tag docker
Path /var/lib/docker/containers/*/*.log
Parser docker
DB /var/log/flb_docker.db
Mem_Buf_Limit 10MB
Skip_Long_Lines On
Refresh_Interval 10cat /etc/td-agent-bit/outputs.conf
[OUTPUT]
Name http
Host ${MONQ-FQDN}
Match syslog
URI /api/public/cl/v1/stream-data
Header x-smon-stream-key ${KEY1}
Header Content-Type application/x-ndjson
Format json_lines
Json_date_key @timestamp
Json_date_format iso8601
allow_duplicated_headers false
[OUTPUT]
Name http
Host ${MONQ-FQDN}
Match docker
URI /api/public/cl/v1/stream-data
Header x-smon-stream-key ${KEY2}
Header Content-Type application/x-ndjson
Format json_lines
Json_date_key @timestamp
Json_date_format iso8601
allow_duplicated_headers false${MONQ-FQDN}
– адрес вашего пространства Monq.${KEY1}
,${KEY2}
– API-ключи, скопированные на странице потоков данных Monq. -
После изменения конфигурационных файлов перезапустите Fluent Bit для применения настроек.
В примере используются стандартные парсеры, поставляемые с Fluent Bit.
При необходимости, вы можете реализовать новый парсер и разместить его в конфигурации (см. подробнее).