Kapacitor: Интеграл с единицей времени
Я пытаюсь создать тиковый скрипт, который сокращает данные. Для этого я использую интеграл, так как я хочу кВт / ч. Сценарий выглядит так:
batch
|query('SELECT INTEGRAL("value", 1h) FROM "iotawatt"."autogen"."Main"')
.every(5m)
.groupBy(time(1h))
|influxDBOut()
.database('iotawatt')
.retentionPolicy('autogen')
.measurement('Main_hourly2')
Это приводит к следующей ошибке:
не удалось разобрать запрос InfluxQL: неверное количество аргументов для интеграла, ожидаемое 1, полученное 2
После этой ошибки я удалил 2-й аргумент, и проблема решена. Но мне действительно нужно, чтобы единица была определена. Ранее я работал с интегралом, чтобы создать непрерывный запрос для достижения той же цели, и интеграл принял второй аргумент. Поскольку cq не дает мне возможности отложить понижающую дискретизацию (данные с метками времени отправляются пакетами и поступают позже, чем выполняется cq), я переключился на Kapacitor.
Согласно документам, он должен принять второй аргумент: https://docs.influxdata.com/influxdb/v1.6/query_language/functions/
Я делаю что-то неправильно?
Спасибо за вашу помощь!!!