Хотя с FluentD можно было бы использовать некоторые из доступных, хотя и устаревших плагинов вывода, таких как InfluxDB-Metrics , я не смог заставить плагин работать должным образом, и он не обновлялся более шести лет, поэтому он, вероятно, не будет работать с более новыми выпусками FluentD. Однако
Fluent Bit имеет встроенный выход Influxdb, поэтому я смог заставить его работать с этим. Предостережение в том, что у него нет плагина Telegraf. Таким образом, решение, которое я нашел, состояло в том, чтобы установить входной плагин tcp в Fluent Bit и настроить Telegraf на запись в него отформатированных данных JSON в разделе вывода.
Предостережение в том, что данные JSON вложены и неправильно отформатированы для InfluxDB. Обходной путь должен использовать вложенные фильтры в Fluent Bit, чтобы «поднять» формат вложенных данных и правильно переформатировать для InfluxDB.
Ниже приведен пример дискового пространства, которое не является метрикой c, которая изначально поддерживается метриками Fluent Bit, но изначально поддерживается Telegraf:
@SET me=${HOST_HOSTNAME}
[INPUT] ## tcp recipe ## Collect data from telegraf
Name tcp
Listen 0.0.0.0
Port 5170
Tag telegraf.${me}
Chunk_Size 32
Buffer_Size 64
Format json
[FILTER] ## rename the three tags sent from Telegraf to prevent duplicates
Name modify
Match telegraf.*
Condition Key_Value_Equals name disk
Rename fields fieldsDisk
Rename name nameDisk
Rename tags tagsDisk
[FILTER] ## un-nest nested JSON formatted info under 'field' tag
Name nest
Match telegraf.*
Operation lift
Nested_under fieldsDisk
Add_prefix disk.
[FILTER] ## un-nest nested JSON formatted info under 'disk' tag
Name nest
Match telegraf.*
Operation lift
Nested_under tagsDisk
Add_prefix disk.
[OUTPUT] ## output properly formatted JSON info
Name influxdb
Match telegraf.*
Host influxdb.server.com
Port 8086
#HTTP_User whatever
#HTTP_Passwd whatever
Database telegraf.${me}
Sequence_Tag point_in_time
Auto_Tags On
ПРИМЕЧАНИЕ: Это просто неуклюжий конфиг для моего собственного доказательства концепции