问题描述
我正在尝试对 metric(metric_test) 发出警报。评估间隔为每 5 分钟一次。
问题:
假设,在时间 (T1) 发出警报并且普罗米修斯在时间 (t3) 抓取指标,但在此期间目标上没有名称为 metric_test 的指标,普罗米修斯将更新为无数据,如下所示。 在 Prometheus GUI -> Graph 中,当您查询如下指标时,它不显示任何数据。
Metric_test
没有数据
在时间 (t5) 发生警报评估,由于“无数据”,它将警报标记为已解决。我不希望在没有数据的情况下进行评估。
我们如何避免这种情况?
解决方法
当我正确理解您时,您的指标会随着时间的推移而出现和消失吗?这可能不是最好的主意。但是您可以使用“..._over_time”函数来聚合当前不存在的指标。
(顺便说一句,每 5 分钟抓取和评估一次表达式可能会很慢。如果您增加频率,您可以在指标出现时对其进行评估,并且您也可以更快地发出警报)