prometheus.exporter.statsd
prometheus.exporter.statsd
组件内嵌了 statsd_exporter 来收集 StatsD 风格的指标并将其作为 Prometheus 指标导出。
使用方法
prometheus.exporter.statsd "LABEL" {
}
参数
以下参数可用于配置导出器的行为。所有参数都是可选的。省略的参数使用默认值。
名称 | 类型 | 描述 | 默认值 | 必需 |
---|---|---|---|---|
listen_udp | 字符串 | 接收 statsd 指标行的 UDP 地址。使用 "" 以禁用它。 | :9125 | 否 |
listen_tcp | 字符串 | 接收 statsd 指标行的 TCP 地址。使用 "" 以禁用它。 | :9125 | 否 |
listen_unixgram | 字符串 | 接收数据报文的 Unixgram 套接字路径,以接收 statsd 指标行。 | 否 | |
unix_socket_mode | 字符串 | Unix 套接字的权限模式。 | 755 | 否 |
mapping_config_path | 字符串 | 用于将特定点分隔的 StatsD 指标翻译为被标记的 Prometheus 指标的 YAML 映射文件的路径。 | 否 | |
read_buffer | 整数 | 与 UDP 或 Unixgram 连接关联的操作系统的传输读取缓冲区的大小(以字节为单位)。 | 否 | |
cache_size | 整数 | 指标映射缓存的最大大小。达到最大大小时,依赖于最近最少使用替换策略。 | 1000 | 否 |
cache_type | 字符串 | 指标映射缓存类型。有效选项是“lru”和“random”。 | lru | 否 |
event_queue_size | 整数 | 处理事件内部队列的大小。 | 10000 | 否 |
event_flush_threshold | 整数 | 在 queue 填充之前要保留的事件数量。 | 1000 | 否 |
event_flush_interval | 字符串 | 事件队列填充的最大时间间隔。 | 200ms | 否 |
parse_dogstatsd_tags | 字符串 | 解析 DogStatsd 风格的 tags。 | 是 | 否 |
parse_influxdb_tags | 字符串 | 解析 InfluxDB 风格的 tags。 | 是 | 否 |
parse_librato_tags | 字符串 | 解析 Librato 风格的 tags。 | 是 | 否 |
parse_signalfx_tags | 字符串 | 解析 SignalFX 风格的 tags。 | 是 | 否 |
relay_addr | 字符串 | 中继地址配置(格式为 'host:port' 的 UDP 端点)。 | 否 | |
relay_packet_length | 整数 | 最大中继输出数据包长度,以避免分片。 | 1400 | 否 |
应启用至少一个 listen_udp
、listen_tcp
或 listen_unixgram
。有关 config文件
映射的更多信息,请参阅 statsd_exporter
文档。确保内核参数 net.core.rmem_max
的设置值大于 read_buffer
中指定的值。
模块
prometheus.exporter.statsd
模块不支持任何模块,完全通过参数进行配置。
导出字段
以下字段被导出,并可由其他组件引用。
名称 | 类型 | 描述 |
---|---|---|
目标 | list(map(string)) | 可用于收集导出度量指标的目标。 |
例如,可以将 targets
传递给一个 discovery.relabel
模块来重写目标的标签集,或传递给一个收集公开度量的 prometheus.scrape
模块。
组件健康状态
prometheus.exporter.statsd
仅在不提供有效配置时报告为不健康。在这些情况下,导出字段保留其最后健康值。
调试信息
prometheus.exporter.statsd
不暴露任何特定于组件的调试信息。
调试指标
prometheus.exporter.statsd
不暴露任何特定于组件的调试指标。
示例
此示例使用 prometheus.scrape
模块 来收集 prometheus.exporter.statsd
的度量指标。
prometheus.exporter.statsd "example" {
listen_udp = ""
listen_tcp = ":9125"
listen_unixgram = ""
unix_socket_mode = "755"
mapping_config_path = "mapTest.yaml"
read_buffer = 1
cache_size = 1000
cache_type = "lru"
event_queue_size = 10000
event_flush_threshold = 1000
event_flush_interval = "200ms"
parse_dogstatsd_tags = true
parse_influxdb_tags = true
parse_librato_tags = true
parse_signalfx_tags = true
}
// Configure a prometheus.scrape component to collect statsd metrics.
prometheus.scrape "demo" {
targets = prometheus.exporter.statsd.example.targets
forward_to = [prometheus.remote_write.demo.receiver]
}
prometheus.remote_write "demo" {
endpoint {
url = PROMETHEUS_REMOTE_WRITE_URL
basic_auth {
username = USERNAME
password = PASSWORD
}
}
}
替换以下内容
PROMETHEUS_REMOTE_WRITE_URL
:接收度量指标发送的 Prometheus remote_write 兼容服务器的 URL。USERNAME
:用于身份验证remote_write
API 的用户名。PASSWORD
:用于身份验证remote_write
API 的密码。
兼容组件
prometheus.exporter.statsd
有可被以下组件消费的导出
- 消费 目标 的组件
注释
连接某些组件可能不合理,或者组件可能需要进一步的配置才能正确运行。有关更多详细信息,请参阅链接文档。