在 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