首页 > 解决方案 > 如何在 Kapacitor 中调试批处理查询

问题描述

正如我在日志中所了解的,我们只能看到离散值,而看不到系列值表

具有任何聚合函数

batch
    |query('''SELECT sum("gauge") ***  ''')
    ***
    |mean('sum_gauge')
    |log()

log() 返回具有值的 Kapacitor 点

但没有:

batch
    |query('''SELECT sum("gauge") ***  ''')
        .period(1h)
        .every(10s)
        .align()
        .groupBy(time(15m),'host')
        .fill(0)
    |log()

只显示

2018-05-10T13:19:20.084Z
kapacitor
begin batch
2018-05-10T13:19:20.084Z
kapacitor
batch point
2018-05-10T13:19:20.084Z
kapacitor
batch point
2018-05-10T13:19:20.084Z
kapacitor
batch point

根据https://github.com/influxdata/chronograf/blob/1.4.4.2/ui/src/kapacitor/components/LogsTableRow.js#L44 我们将看到chronograf UI中仅显示“msg”字段

但日志有更多信息(您可以使用 来查看kapacitor watch <task_id>),例如:

ts=2018-05-10T14:50:40.011Z lvl=info msg="batch point" service=kapacitor task_master=main task=14860f8d-8b6d-48d4-a7fc-b5cbea717b37 node=log3 prefix= name=cpu group=host=*** tag_host=*** field_*=*** time=2018-05-10T14:50:00Z

也许有人知道如何调试此类查询(批处理)的方法或工具?

因为在其他监控堆栈中,可以在警报示例#bosun 中创建带有预处理点的图形

在此处输入图像描述

chronograf 中的“警报规则生成器”看起来像我需要的,但它的功能非常有限,您无法创建复杂的警报(例如使用连接)

标签: kapacitorchronograf

解决方案


chronograf >= 1.5.0 支持| log()批量查询 https://github.com/influxdata/chronograf/pull/3423


推荐阅读