prometheus重复发送报警通知问题的解决,超时时间设置

最近使用prometheus发送报警通知时,经常出现重复发送的问题。原因是alertmanager请求的webhook服务性能不好,有时处理时间比较久,超过了timeout超时时间(我这里是10s)。这个时候alertmanager没有收到response,会认为请求失败再次发送,最终导致了消息的重复。
最简单的解决办法就是重新设置超时时间。但是这个配置却不好找到。
当出现报警时,prometheus服务会将报警推送到alertmanager,alertmanager再根据用户的配置将消息发送到邮箱或者webhook等。这里promethues和alertmanager服务都涉及到了超时问题。比较容易找到的是prometheus.yml中的设置,如下所示,有一个timeout配置。但是我设置了之后发现报警的超时时间仍然是之前的10s 没有变化。

alerting:
  alertmanagers:
  - timeout: 1m
    scheme: http
    static_configs:
    - targets:
      - "127.0.0.1:9093"

其实在alertmanager.yml中,还有一个参数group_interval,官方解释为:

发送有关新告警的通知之前要等待的时间.该通知将添加到已为其发送了初始通知的一组警报中

除此之外这个参数也控制了请求webhook时的超时时间。这个参数的默认值是5m,但在我的这个服务中,刚好之前设置成了10s。我将这个数值设置成了1m后重复发送报警的问题果然解决了。
当然还有一个问题是,有时我们可能希望新告警的间隔时间(就是官方解释的功能)和webhook请求超时时间不一致,这个问题似乎目前无解。

可以参考的promethues官方文档 https://prometheus.io/docs/introduction/overview/
另外还有一个中文版的文档 https://hulining.gitbook.io/prometheus/
其中有对于promethues配置和alertmanager配置的详细介绍

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值