首页 > 解决方案 > 如何用标签维度计算absent_over_time?

问题描述

例如,我有一个user_actions带有标签的计数器user_id。我想得到警报,什么时候user_actions消失user_id

从字面上看,我需要absent_over_time(user_actions[60m]),但考虑到user_id标签。

标签: alertmonitoringprometheusprometheus-alertmanagerpromql

解决方案


我无法为此任务提出 PromQL 解决方案,但可以使用lag()MetricsQL 中的函数来实现它。例如,以下查询将返回user_actions过去 5 分钟内没有数据点的所有时间序列(请参阅5*60查询中的内容)。查询在 60 分钟后停止注意到这样的时间序列(60m见方括号):

lag(user_actions[60m]) > 5*60

在MetricsQL 文档中查看有关lag()函数的更多详细信息。


推荐阅读