InfluxDB и telegraf агрегация данных
Использую Telegraf и InfluxDb для сбора метрик с приложения. Приложение отправляет данные в Influx. Но в Influx данные идут не сразу. Их перехватывает Telegraf (он слушает соответсвующий порт). Затем Telegraf агрегирует полученные данные и пишет всё это (и изначальные даныне и агрегированные) уже в InfluxDb. Обычные, не агрегированные, данные пишутся правильно - сколько пришло в телеграф из приложения, столько и попало в Influx. Но агрегация работает неправильно: итоговая сумма намного меньше, чем сумма всех пришедших в телеграф значений. Вот мой конфиг:
[agent]
interval = "2s"
round_interval = true
omit_hostname = true
metric_batch_size = 1000
metric_buffer_limit = 10000
collection_jitter = "0s"
flush_interval = "10s"
flush_jitter = "0s"
precision = ""
debug = true
quiet = false
logfile = ""
[[inputs.influxdb_v2_listener]]
service_address = ":8086"
[[aggregators.basicstats]]
period = "30s"
drop_original = false
stats = ["sum"]
[[outputs.influxdb_v2]]
urls = ["http://localhost:8087"]
token = "my token"
organization = "my org"
bucket = "my bucket"
Как можно заметить, единственное преобразование, которое я применяю к входным данным, это суммирование. Но итоговая сумма агрегированных данных оказывается меньше, чем сумма неагрегированных. Как можно это исправить?