在 Prometheus 中找出标签的不同值并设置警报
Finding out distinct value for a label in Prometheus and setup an alert
我有一个案例,我想设置一个警报,其中至少有一个标签值是不同的。
例如,一个 Kubernetes 集群 xyz(有 20 个节点),指标为 test_metric{cluster_name="xyz",os="ubuntu"}
。如果这 20 个节点中的任何一个具有不同的 "os" 值,我想找到 out/setup 警报。
基本上,这个想法是当 os 的值与集群中所有节点的 acros 不同时发出警报。
目前我正在测试一个我认为不正确的非常简单的规则:
count(test_metric{cluster_name="xyz",os!=""} != count(test_metric{cluster_name="xyz",os!=""})
嵌套计数是处理此问题的方法:
count by (cluster_name) (
count by (os, cluster_name)(test_metric)
) != 1
我有一个案例,我想设置一个警报,其中至少有一个标签值是不同的。
例如,一个 Kubernetes 集群 xyz(有 20 个节点),指标为 test_metric{cluster_name="xyz",os="ubuntu"}
。如果这 20 个节点中的任何一个具有不同的 "os" 值,我想找到 out/setup 警报。
基本上,这个想法是当 os 的值与集群中所有节点的 acros 不同时发出警报。
目前我正在测试一个我认为不正确的非常简单的规则:
count(test_metric{cluster_name="xyz",os!=""} != count(test_metric{cluster_name="xyz",os!=""})
嵌套计数是处理此问题的方法:
count by (cluster_name) (
count by (os, cluster_name)(test_metric)
) != 1