使用聚合器和处理器插件转换数据
除了输入插件和输出插件之外,Telegraf 还包括聚合器和处理器插件,它们用于在指标通过 Telegraf 时进行聚合和处理。
- 转换
- 装饰
- 过滤] Aggregate[聚合
- 转换
- 装饰
- 过滤] CPU --> Process Memory --> Process MySQL --> Process SNMP --> Process Docker --> Process Process --> Aggregate Aggregate --> InfluxDB Aggregate --> File Aggregate --> Kafka style Process text-align:left style Aggregate text-align:left
处理器插件 在指标通过时处理它们,并根据它们处理的值立即发出结果。例如,这可能是打印所有指标或向所有通过的指标添加一个标签。有关处理器插件列表及其详细配置选项链接,请参阅 处理器插件。
另一方面,聚合器插件 稍微复杂一些。聚合器通常用于发出新的聚合指标,例如运行平均值、最小值、最大值、分位数或标准差。因此,所有聚合器插件都配置有 period。period 是每个聚合代表的指标窗口的大小。换句话说,发出的聚合指标将是过去 period 秒的聚合值。由于许多用户只关心他们的聚合指标,而不关心收集的每一个指标,因此还有一个 drop_original 参数,它告诉 Telegraf 只发出聚合指标而不发出原始指标。有关聚合器插件列表及其详细配置选项链接,请参阅 聚合器插件。
处理器和聚合器一起使用时的行为
在 Telegraf v1.17 中同时使用聚合器和处理器插件时,处理器插件会处理数据,然后将其传递给聚合器插件。聚合器插件聚合数据后,会将数据传回处理器插件。这可能会产生意外的后果,例如数学运算执行两次。请参阅 influxdata/telegraf#7993。
如果使用自定义处理器脚本,它们必须是幂等的(可重复的,没有副作用)。对于非幂等的自定义过程,请使用 namepass 或 namedrop 以避免在聚合数据被第二次处理时出现问题。
此页面是否有帮助?
感谢您的反馈!
支持和反馈
感谢您成为我们社区的一员!我们欢迎并鼓励您对 Telegraf 和本文档提出反馈和 bug 报告。要获取支持,请使用以下资源
具有年度合同或支持合同的客户可以 联系 InfluxData 支持。