Prometheus 将指标与警报的不同标签相结合

Prometheus 将指标与警报的不同标签相结合,prometheus,Prometheus,因此,我的意图如下: 我在每台服务器上都有一个节点导出器,它为我提供了一个向上的度量,这只是因为导出器已关闭,并不意味着服务器已关闭。因此,另外使用Blackbox exporter检查服务器是否可以通过icmp访问。现在,我想将这两个指标结合到一个警报中,因为如果无法通过Ping访问服务器,并且导出器关闭,那么服务器实际关闭的可能性很高 我的问题是: Instance:Up == 0 and ON(instance) instance:probe_success == 0 问题在于实例标签略

因此,我的意图如下: 我在每台服务器上都有一个节点导出器,它为我提供了一个向上的度量,这只是因为导出器已关闭,并不意味着服务器已关闭。因此,另外使用Blackbox exporter检查服务器是否可以通过icmp访问。现在,我想将这两个指标结合到一个警报中,因为如果无法通过Ping访问服务器,并且导出器关闭,那么服务器实际关闭的可能性很高

我的问题是:

Instance:Up == 0 and ON(instance) instance:probe_success == 0
问题在于实例标签略有不同: 节点导出器在端口10500上运行,这导致标签my.instance.com:10500,而icmp不使用该端口,因此my.instance.com

有没有一种方法可以将它们结合起来?

您可以使用
实例
中的
“hostname:port”
值将
实例
标签(或添加一些其他标签)替换为主机名

大致如下:

up{job="node"}
  or on(instance)
label_replace(probe_success{job="prober"}, "instance", "$1", "instance", "(.+):.+"

感谢您为我指出正确的文档位置!我通过将端口添加到带有“$0:10500”替换项的探测度量中来解决这个问题,并将整个实例与匹配*