Prometheus 普罗米修斯,但没有匹配的实例标签
所以我有这样的情况:Prometheus 普罗米修斯,但没有匹配的实例标签,prometheus,prometheus-alertmanager,Prometheus,Prometheus Alertmanager,所以我有这样的情况: Blackbox icmp,其中实例标签为example.com Blackbox http,其中实例标签为https://example.com 节点导出器,其中实例标签为example.com:9100 现在所有这些都引用了同一个服务器,我创建了一个警报,当blackbox icmp失败且节点导出器关闭时触发,即InstanceDown警报。现在blackbox http也将触发,因为http状态代码现在是错误的,但我不希望blackbox http警报在Instanc
Blackbox icmp,其中实例标签为
example.com
Blackbox http,其中实例标签为
https://example.com
节点导出器,其中实例标签为
example.com:9100
现在所有这些都引用了同一个服务器,我创建了一个警报,当blackbox icmp失败且节点导出器关闭时触发,即InstanceDown
警报。现在blackbox http也将触发,因为http状态代码现在是错误的,但我不希望blackbox http警报在InstanceDown
警报已经触发时也会触发
我遇到的问题是,即使是同一台服务器,实例标签也都是不同的。我怎样才能抑制这种情况?我能想到的唯一解决办法是在每个作业中添加另一种类似于“域”的冗余标签,这样我就可以在
equals
列表中使用该标签来进行抑制。您需要使用普罗米修斯的“relabel\u config”功能,例如,您可以将所有不同的实例标签更改为“example”
黑盒icmp
relabel_configs:
- source_labels: [__address__]
regex: '([a-z]+)\.com'
replacement: ${1}
target_label: instance
relabel_configs:
- source_labels: [__address__]
regex: 'https//([a-z]+)\.com'
replacement: ${1}
target_label: instance
黑盒http
relabel_configs:
- source_labels: [__address__]
regex: '([a-z]+)\.com'
replacement: ${1}
target_label: instance
relabel_configs:
- source_labels: [__address__]
regex: 'https//([a-z]+)\.com'
replacement: ${1}
target_label: instance
节点导出器
relabel_configs:
- source_labels: [__address__]
regex: '([a-z]+)\..*'
replacement: ${1}
target_label: instance
重要
还保留常规的Blackbox relabel_配置规则,如示例中所示
请参阅Prometheus文档中的更多信息。但这也会更改探测器实际运行的地址或节点导出器的预期位置。您需要保持常规Blackbox relabel_配置规则,如Blackbox自述中的示例所述。我刚刚更新了答案。