普罗米修斯查询以计算一段时间内的唯一标签

Sco*_*ith 5 prometheus promql

我需要计算给定时间范围内普罗米修斯指标的唯一标签集的数量。例如,“在过去 7 天内的某个时间点,有多少唯一标签集的值为 1。”

我已经使用调查countcount_over_time,但count在一个时间内只能对即时向量意味着我可以得到独特labelsets的数量实例的时候,而不是在聚集。count_over_time返回没有用的值的数量,因为我需要知道标签集的数量而不是每个有多少个值。

基本上我想要类似的东西count((metric_name >= 1)[7d])。这是一个非常容易在 PromQL 之外解决的问题,只需metric_name >= 1在 7 天内进行范围查询,然后计算响应结果字段中的系列数,但如果可能,我想在 PromQL 中执行此查询。

Sco*_*ith 8

弄清楚了。count(count_over_time(metric[range]))给出我想要的值。