Telegraf 处理器插件
Telegraf 处理器插件会转换单个指标,例如通过转换标签和字段或数据类型。
Batch
此插件通过添加批次标签将指标分组到批次中。这对于并行处理指标很有用,下游的处理器、聚合器或输出可以使用 tagpass 或 metricpass 选择批次。
指标使用轮循方案分布在批次中。
Converter
此插件允许将标签转换为字段或时间戳,并将字段转换为标签或时间戳。此外,该插件还允许更改字段类型。
在将标签转换为字段时,请务必确保系列仍然可以唯一标识。具有相同系列键(度量 + 标签)的字段会相互覆盖。
Cumulative Sum
此插件累积每个指标的字段值随时间的变化,并在指标更新时发出累积总和指标。这在使用依赖于单调递增值的输出时很有用。
系列中的指标是按**到达顺序**累积的,而不是按其时间戳顺序!
Date
此插件将指标时间戳添加为人类可读的标签。一个常见的用例是添加一个可以用于按月或按年分组的标签。
Dedup
此插件过滤掉字段值与先前值完全重复的指标。如果代理配置中的 statefile 选项已设置,此插件将在运行时保留其状态。
Defaults
此插件允许为字段和标签指定默认值,以防标签或字段不存在或具有空值。
Enum
此插件允许根据配置的枚举映射字段或标签值。主要用例是将数值重写为人类可读值或反之。可以配置默认映射以用于所有剩余值。
Execd
此插件作为一个单独的进程运行外部程序,并将指标通过 stdin 管道传输到进程,并从其 stdout 读取已处理的指标。stderr 上的程序输出将被记录。
Filepath
此插件允许使用路径(例如,basename 提取最后一个路径元素)来转换标签和字段值。值可以就地修改,也可以存储在另一个键中。
Filter
此插件允许指定一组规则来处理指标,并具有保留或删除这些指标的能力。它不修改指标。因此,用户可能希望应用此处理器来从处理/输出流中删除指标。
过滤不是特定于输出的,而是将应用于此处理器处理的指标。
Network Interface Name
此插件使用 SNMP 查找网络接口名称。
Lookup
此插件允许使用一个或多个包含查找表的文件来注解传入的指标。查找是静态的,因为文件仅在启动时使用。其主要用例是为指标添加附加标签,例如,根据其来源。可以根据查找表文件添加多个标签。
可以使用 Golang 模板生成查找键,该模板可以访问指标名称({{.Name}})、标签值({{.Tag "mytag"}},其中 mytag 是标签名称)和字段值({{.Field "myfield"}},其中 myfield 是字段名称)。不存在的标签和字段将分别导致空字符串或 nil。如果找不到键,则指标将按原样传递。默认情况下,会添加所有匹配的标签,并覆盖现有的标签值。
该插件仅支持添加标签,因此所有映射的标签值都必须是字符串!
Noise
此插件用于向数值字段添加噪声。对于每个字段,使用定义的概率密度函数生成噪声并将其添加到值中。函数类型可以配置为拉普拉斯、高斯或均匀。
Port Name Lookup
此插件允许将包含知名端口的标签或字段(TCP 端口为数字,例如 80;端口和协议为 443/tcp)转换为注册的服务名称。
Printer
此插件将每个通过它的指标打印到标准输出。
Regex
此插件使用正则表达式模式转换标签和字段值,以及重命名标签、字段和指标。标签和字段值可以使用命名组进行批量转换。
regex 处理器仅处理字符串字段。它不适用于任何其他数据类型,如整数或浮点数。
Rename
此插件允许重命名度量、字段和标签。
Reverse DNS
此插件对包含 IP 的标签或字段进行反向 DNS 查找,并创建一个包含相应 DNS 名称的标签或字段。
Scale
此插件允许根据以下公式将字段值从输入范围缩放到给定输出范围:
或者,您可以根据以下公式将输入乘以一个因子并加上一个偏移量:
输入字段将在可能的情况下转换为浮点值。否则,无法转换的字段将被忽略并保留其原始值。
输入值和输出值都不会被限制在其各自的范围内!
SNMP Lookup
此插件通过 SNMP 查找额外信息,并将其作为标签添加到指标中。
Split
此插件根据配置的模板将一个指标拆分为一个或多个指标。生成的指标将根据源指标进行时间戳处理。模板可以重叠,其中一个字段或标签在模板之间共享,并因此出现在多个指标中。
如果 drop_original 设置为 true,则在未找到匹配项时,该插件可能导致丢弃所有指标!请确保在生产环境中使用之前测试模板,并使用指标过滤来避免数据丢失。
Starlark
此插件为每个匹配的指标调用提供的 Starlark 函数,允许自定义编程指标处理。
Starlark 语言是 Python 的一种方言,对于有 Python 语言经验的人来说会很熟悉。但是,存在重大差异。现有的 Python 代码不太可能在未修改的情况下正常工作。执行环境是沙箱化的,无法执行 I/O 操作,例如从文件或套接字读取。
Starlark 规范 包含有关语法和可用函数的详细信息。
Strings
此插件允许使用不同的函数操作度量名称、标签和字段值中的字符串。
Tag Limit
此插件确保只保留给定指标的特定数量的标签,并在数据源附加的标签数量超过限制时选择要保留的标签。
这在使用对每个指标的标签/标签数量有硬性限制的输出系统(例如 Stackdriver)或者标签基数过高在计算和/或财务上都很昂贵时非常有用。
Template
此插件将模板应用于指标以生成新标签。此插件的主要用例是创建一个可用于动态路由到多个输出插件或使用特定于输出的路由选项的标签。
模板可以访问每个指标的度量名称、标签、字段和时间戳。模板遵循Go Template 语法,并且可能包含Sprig 函数。
Timestamp
此插件允许解析包含时间戳的字段为其他格式的时间戳。
TopK
此插件过滤一段时间内的顶级序列,并通过不同的聚合函数计算顶级指标。处理步骤包括根据指标名称和标签对指标进行分组,每周期计算每个组的聚合函数,并输出前 K 组。
此页面是否有帮助?
感谢您的反馈!
支持和反馈
感谢您成为我们社区的一员!我们欢迎并鼓励您对 Telegraf 和本文档提出反馈和 bug 报告。要获取支持,请使用以下资源
具有年度合同或支持合同的客户可以 联系 InfluxData 支持。