不允许批量查询向“”“”请求数据
batch query is not allowed to request data from "".""
我开始使用 Kapacitor 并一直在尝试 运行 first guide in the Kapacitor documentation, but with data I already have. I managed to define a task, but I can neither enable it nor can I run a backfill. I came across this question,这与我的问题类似,但那里的答案没有帮助。与那里的错误消息相反,我得到了数据库、保留策略、and/or 测量的空字符串。
在 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" example 中记录时,情况相同。此外,在该示例中,还有用于限制时间范围的开始日期和结束日期。给出的时间格式是错误的,Kapacitor 无法理解。而不是e。 G。 2015-10-01
我必须输入 2015-10-01T00:00Z
以使其至少传递有关时间格式错误的错误消息。
在 Kapacitor 日志中没有一行关于这些错误,只有当我尝试删除记录时,我得到类似 remove /var/lib/kapacitor/replay/1f5...750.brpl: no such file or directory
的内容,这可以在日志中找到。日志中有很多 info
行显示成功的 POST to/from InfluxDB _internal
数据库,HTTP 响应结果为 204。
有没有人知道我可能做错了什么?
好的,周末过后我又试了一次。没有任何更改,它现在在失败的步骤中接受了我的脚本,但是,现在我能够在日志中找到错误消息。提到的节点是 eval
节点并指向类型不匹配。当我更改行时
|eval(lambda: 100 * (1 - "c.val") * "v.val")
到
|eval(lambda: 100.0 * (1.0 - "c.val") * "v.val")
错误消息消失了,命令 kapacitor show weathertest
现在显示了相当合理的内容。
此外,我在测试期间一遍又一遍地重新定义、记录、重放和删除任务和记录,我可能在更改 tick 脚本后忘记重新定义任务(不太确定)。修改完上面的内容,重新定义任务并重放之后,我终于在 InfluxDB 实例中找到了预期的数据。
我开始使用 Kapacitor 并一直在尝试 运行 first guide in the Kapacitor documentation, but with data I already have. I managed to define a task, but I can neither enable it nor can I run a backfill. I came across this question,这与我的问题类似,但那里的答案没有帮助。与那里的错误消息相反,我得到了数据库、保留策略、and/or 测量的空字符串。
在 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" example 中记录时,情况相同。此外,在该示例中,还有用于限制时间范围的开始日期和结束日期。给出的时间格式是错误的,Kapacitor 无法理解。而不是e。 G。 2015-10-01
我必须输入 2015-10-01T00:00Z
以使其至少传递有关时间格式错误的错误消息。
在 Kapacitor 日志中没有一行关于这些错误,只有当我尝试删除记录时,我得到类似 remove /var/lib/kapacitor/replay/1f5...750.brpl: no such file or directory
的内容,这可以在日志中找到。日志中有很多 info
行显示成功的 POST to/from InfluxDB _internal
数据库,HTTP 响应结果为 204。
有没有人知道我可能做错了什么?
好的,周末过后我又试了一次。没有任何更改,它现在在失败的步骤中接受了我的脚本,但是,现在我能够在日志中找到错误消息。提到的节点是 eval
节点并指向类型不匹配。当我更改行时
|eval(lambda: 100 * (1 - "c.val") * "v.val")
到
|eval(lambda: 100.0 * (1.0 - "c.val") * "v.val")
错误消息消失了,命令 kapacitor show weathertest
现在显示了相当合理的内容。
此外,我在测试期间一遍又一遍地重新定义、记录、重放和删除任务和记录,我可能在更改 tick 脚本后忘记重新定义任务(不太确定)。修改完上面的内容,重新定义任务并重放之后,我终于在 InfluxDB 实例中找到了预期的数据。