influxdb - 在将数据发送到 InfluxDB 之前,我可以使用 Kapacitor 处理数据吗?

标签 influxdb kapacitor

我正在引导一个全新的 TICK 堆栈并且真的很喜欢整个系统。 . .然而,关于 Kapacitor 的一点让我感到困惑。

如果您查看此处的图表:https://www.influxdata.com/time-series-platform/kapacitor/ , 有一个箭头将 Telegraf 连接到 Kapacitor。 Telegraf 可以将指标数据直接发送到 Influx,这让我想知道通过 Kapacitor 转发到 Influx 的用例是什么。

想到的唯一用例是您可以将处理逻辑从代理插件移到 Kapacitor 中,从而最大限度地减少代理的占用空间。

长话短说,我是否遗漏了什么,从 Kapacitor 到 Influx 的箭头暗示的用例是什么?

最佳答案

Kapacitor 使您能够处理数据流(或从现有的 influxdb 实例读取)并写入 influxdb。这样做的好处是有一个单独的进程完全处理来自主后端的数据处理。

一个典型的例子是下采样。如果您想直接在 influxdb 中执行此操作,您需要处理一个连续的查询来为您执行此操作……但它们管理起来有点麻烦。 Kapacitor 可以帮助使这更容易 follows :

stream
|from()
    .database('telegraf')
    .measurement('cpu')
    .groupBy(*)
|window()
    .period(5m)
    .every(5m)
    .align()
|mean('usage_idle')
    .as('usage_idle')
|influxDBOut()
    .database('telegraf')
    .retentionPolicy('autogen')
    .measurement('mean_cpu_idle')
    .precision('s')

希望对您有所帮助!

关于influxdb - 在将数据发送到 InfluxDB 之前,我可以使用 Kapacitor 处理数据吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46748384/

相关文章:

InfluxDB - 状态持续时间的聚合数据

go - kapacitor不运行表明失败

Docker TICK Sandbox不提供UDF Python功能

influxdb - 从 InfluxDB 导出数据

influxdb - 在 Influx 中查询特定键的最近时间戳(MAX/Last)

curl - 使用 CURL 在 InfluxDB 中插入行

docker - Telegraf无法连接到InfluxDB

plugins - 如何向 Telegraf 添加插件?