Я начинаю работать с Kapacitor и пытаюсь запустить первое руководство в документации Kapacitor, но с данными, которые у меня уже есть. Мне удалось определить задачу, но я не могу ни включить ее, ни запустить обратную засыпку. Я наткнулся на этот вопрос , который похож на мою проблему, но ответ на него не помог. В отличие от сообщения об ошибке здесь я получаю пустые строки для базы данных, политики хранения и / или измерения.
В конфигурации Kapacitor я установил соединение InfluxDB с экземпляром локального хоста с именем localhost
(который имеет базу данных mydb
и измерения weather.current.clouds
и weather.current.visibility
с политикой хранения по умолчанию autogen
) и создал следующий weathertest.tick
скрипт:
dbrp "mydb"."autogen"
var clouds = batch
|query('select mean(value) / 100.0 as val from "mydb"."autogen"."weather.current.clouds"')
.period(1h)
.every(1h)
.groupBy(time(1m), *)
.fill(0)
var vis = batch
|query('select mean(value) / 10000.0 as val from "mydb"."autogen"."weather.current.visibility"')
.period(1h)
.every(1h)
.groupBy(time(1m), *)
.fill(0)
clouds
|join(vis)
.as('c', 'v')
|eval(lambda: 100 * (1 - "c.val") * "v.val")
.as('pcent')
|influxDBOut()
.cluster('localhost')
.database('mydb')
.retentionPolicy('autogen')
.measurement('testmetric')
.tag('host', 'myhost.local')
.tag('key', 'weather.current.lightidx')
Это то, что я придумал в нерабочее время методом проб и (особенно) ошибок. Как указано в заголовке, когда я пытаюсь включить свою задачу с помощью kapacitor enable weathertest
, я получаю сообщение об ошибке enabling task weathertest: batch query is not allowed to request data from "".""
. То же самое, когда я пытаюсь записать, как в примере «Backfill» . Кроме того, в этом примере есть дата начала и дата окончания для ограничения временного интервала. Указанный там формат времени неверен и не понимается Kapacitor. Вместо, например, 2015-10-01
я должен ввести 2015-10-01T00:00Z
, чтобы он, по крайней мере, передавал сообщение об ошибке, касающееся ошибки формата времени.
В журналах Kapacitor нет ни одной строки об этих ошибках, только когда Я пытаюсь удалить запись, получаю что-то вроде remove /var/lib/kapacitor/replay/1f5...750.brpl: no such file or directory
, и это можно найти в журналах. В журналах много info
строк, показывающих успешные POST-запросы в / из InfluxDB для базы данных _internal
с результатом HTTP-ответа 204.
Есть ли у кого-нибудь идея, что я делаю неправильно?