Prometheus Alert 不适用于基于事件的指标

Posted

技术标签:

【中文标题】Prometheus Alert 不适用于基于事件的指标【英文标题】:Prometheus Alert not working for an event based metric 【发布时间】:2021-02-02 16:28:51 【问题描述】:

我有一个指标,仅在发生特定事件时才发送数据。换句话说,它不会每 15 秒定期进行一次连续遥测,但它会针对单个数据点进行。现在,我配置了一个警报来检查指标是否存在(规则中没有包含任何“for”条件,因为不需要等待),应该触发一个警报。

发生的情况是,当指标在 Prometheus 中可用时,该规则会在 Prometheus UI 中激活为黄色,但不会触发,而是在 15 秒内自动消失。我是否需要做一些额外的设置来提醒基于事件的指标仅持续 1 个单个数据点或 15 秒?

谢谢, 阿纳夫

【问题讨论】:

您能否添加一个衡量这些事件的指标,而不是使用仪表(我假设)? 实际上,我是在灭霸标尺组件中尝试这个,而不是在普罗米修斯中。这会有什么不同吗?因为相同的查询和警报在 Prometheus 中运行良好。但是,当我在 Thanos 而不是 Prometheus 中部署时,基于事件的警报停止工作,如果遥测持续时间不超过 15 秒,它会自行解决。 K_Event_CountEvId="24171643",EvMessage="fan alarm" - 这是查询。该指标是连续的,但具有特定值的标签是在特定情况下生成的,并且仅在一个数据点或 15 秒内发送。 【参考方案1】:

我用了 1m 的 count_over_time 并且成功了。尽管数据只存在了 15 秒,但查询使其持续了 1m,并且警报正确触发。

【讨论】:

以上是关于Prometheus Alert 不适用于基于事件的指标的主要内容,如果未能解决你的问题,请参考以下文章

Prometheus 配置不适用于 Spring boot 2.3.0:ClassNotFoundException:io.micrometer.prometheus.HistogramFlavor

如何基于 Prometheus alert 运行 pod

Prometheus查询过滤器不适用于OR过滤器

基于Prometheus和Grafana的监控平台 - 环境搭建

“alert()”和“confirm()”不适用于“apple-mobile-web-app-capable”

driver.switchTo().alert().sendKeys("Hello") 不适用于最新的 chrome 驱动程序 - Selenium Webdriver -java