文档文档

Telegraf 模板模式

模板模式描述了如何将点分隔的字符串映射到 Telegraf 指标以及从 Telegraf 指标映射出来。

一个模板的形式如下

"host.mytag.mytag.measurement.measurement.field*"

以下关键字可以设置

  • measurement:指定 graphite bucket 的这部分对应于 measurement 名称。可以多次指定。
  • field:指定 graphite bucket 的这部分对应于字段名称。可以多次指定。
  • measurement*:指定 graphite bucket 的所有剩余元素对应于 measurement 名称。
  • field*:指定 graphite bucket 的所有剩余元素对应于字段名称。

模板中任何不是关键字的部分都将被视为标签键。这也可以多次指定。

注意以下事项

  • measurement 必须在您的模板中指定。
  • field* 不能与 measurement* 结合使用。

示例

Measurement 和标签模板

一个基本模板指定应用于所有传入指标的单个转换

templates = [
    "region.region.measurement*"
]

这将导致以下 Graphite 到 Telegraf 指标转换。

us.west.cpu.load 100
=> cpu.load,region=us.west value=100

您可以指定多个模板,并使用过滤器来区分它们。

templates = [
    "*.*.* region.region.measurement", # All 3-part measurements will match this one.
    "*.*.*.* region.region.host.measurement", # All 4-part measurements will match this one.
]

字段模板

field 关键字告诉 Telegraf 给定指标该字段名称。

separator = "_"
templates = [
    "measurement.measurement.field.field.region"
]

这将导致以下 Graphite 到 Telegraf 指标转换。

cpu.usage.idle.percent.eu-east 100
=> cpu_usage,region=eu-east idle_percent=100

字段键也可以通过指定 field* 从 graphite bucket 的所有剩余元素中派生出来

separator = "_"
templates = [
    "measurement.measurement.region.field*"
]

这将导致以下 Graphite 到 Telegraf 指标转换。

cpu.usage.eu-east.idle.percentage 100
=> cpu_usage,region=eu-east idle_percentage=100

过滤器模板

使用 glob 匹配来过滤要使用的模板,基于 bucket 的名称

templates = [
    "cpu.* measurement.measurement.region",
    "mem.* measurement.measurement.host"
]

这将导致以下转换

cpu.load.eu-east 100
=> cpu_load,region=eu-east value=100

mem.cached.localhost 256
=> mem_cached,host=localhost value=256

添加标签

要向指标添加其他标签,请在使用 InfluxDB 行协议标签格式(逗号分隔的键值对)的模板模式之后包含它们。

templates = [
    "measurement.measurement.field.region datacenter=1a"
]

这将导致以下 Graphite 到 Telegraf 指标转换。

cpu.usage.idle.eu-east 100
=> cpu_usage,region=eu-east,datacenter=1a idle=100

此页面是否对您有帮助?

感谢您的反馈!


Flux 的未来

Flux 即将进入维护模式。您可以继续像现在这样使用它,而无需对您的代码进行任何更改。

阅读更多

InfluxDB 3 开源版本现已公开发布 Alpha 版

InfluxDB 3 开源版本现已可用于 alpha 测试,根据 MIT 或 Apache 2 许可授权。

我们正在发布两个产品作为 alpha 版本的一部分。

InfluxDB 3 Core,是我们的新开源产品。它是一个用于时间序列和事件数据的最新数据引擎。InfluxDB 3 Enterprise 是一个商业版本,它建立在 Core 的基础上,增加了历史查询功能、读取副本、高可用性、可扩展性和细粒度的安全性。

有关如何开始使用的更多信息,请查看