小编mot*_*ger的帖子

在普罗米修斯重新标记

设定

Prometheus节点导出器已向具有各种标签的领事代理注册为服务。提供给领事代理的示例服务定义:

{
  "service":{
      "id": "server-stats",
      "name": "server-stats",
      "tags": [
        "a=1_meow",
        "b=2_woof",
        "c=3_moo",
        "monkey"
      ],
      "port": 9100,
      "checks": [
        {
          "name": "Process #1",
          "script": "/path/to/healthcheck/script.sh",
          "interval": "5s"
        }
      ]
    }
}
Run Code Online (Sandbox Code Playgroud)

Prometheus设置为寻找该server-stats服务,并使用Consul提供的配置(主机地址和端口)从服务器中获取统计信息。上面的标记可用作逗号分隔的列表__meta_consul_tags,可用于重新标记。

Prometheus重新标记配置:

relabel_configs:
- source_labels: [__meta_consul_tags]
  separator:     ','
  #regex:         '(.+)=(.+)'
  regex:         '([a-z_]+)=([a-z_]+|\d+)'
  target_label:  ${1}
  replacement:   ${2}
Run Code Online (Sandbox Code Playgroud)

问题

我正在尝试向Prometheus公开标签,以便我们可以基于标签获取统计信息和图表。保持上述服务配置这一点,我想每个指标有下列标签除了任何普罗米修斯做内部: a=1_meowb=2_woofc=3_moo和忽略monkey,因为它只是一个字符串。monkey如果有解决方案,我可以从标签列表中删除=。上面编写的relabel配置根本不会导致暴露任何标签,并且似乎被忽略了。在日志级别设置为调试的情况下运行Prometheus也不会产生任何结果。

相关文件

monitoring consul prometheus

3
推荐指数
1
解决办法
5163
查看次数

标签 统计

consul ×1

monitoring ×1

prometheus ×1