Prometheus实战篇:Prometheus告警简介

Prometheus告警简介

简介

告警能力在Prometheus的架构中被划分为俩个独立的部分.如下图所示,通过在Prometheus中定义AlertRule(告警规则),Prometheus会周期性的对告警规则进行计算,如果满足告警触发条件就会向Alertmanager发送告警信息

alertManager作为一个独立的组件,负责接收并处理来自Prometheus Server 的告警信息.Alertmanager可以对这些告警信息进行进一步的处理,比如当接收到大量重复告警时能够消除重复的告警信息,同时对告警信息进行分组并且路由到正确的通知方,Prometheus内置了对邮件,Slack等多种通知方式的支持,同时还支持与Webhook的集成,以支持更多定制化的场景.例如,目前还不支持钉钉,那用户完全可以通过Webhook与钉钉机器人进行集成,从而通过钉钉接收告警信息.同时AlertManager还提供了静默和告警抑制机制来对告警通知行为进行优化.

alertmanager的特性

Alertmanager除了提供基本的告警通知能力外,还主要提供了如:分组,抑制,以及静默等告警特性:

下面来逐一讲解:

分组

分组机制可以将详细的告警信息合并成一个通知.在某些情况下,比如由于系统宕机导致大量的告警同时被触发,在这种情况下分组机制可以将这些被触发的告警合并成一个告警通知,避免一次性接收大量的告警通知,而无法对问题进行快速定位.

例如,当集群中有数百个正在运行的服务实例,并且为每一个实例设置了告警规则.加入此时发生了网络故障,可能导致大量的服务实例无法连接到数据库,结果就会有数百个告警被发送到Alertmanager.

而作为用户,可能只希望能够在一个通知中就能查看哪些服务实例受到影响.这时可以按照服务所在集群或者告警名称对告警进行分组,而将这些告警内聚在一起成为一个通知.

告警分组,告警时间,以及告警的接收方式可以通过Alertmanager的配置文件进行配置

抑制

抑制是指当某一告警发出后,可以停止发送由此告警引发的其他告警的机制.

例如,当集群不可访问时触发了一次告警,通过配置Alertmanager可以忽略与该集群有关的其他所有告警.这样就可以避免收到与实际问题无关的告警通知.

抑制机制同样通过Alertmanager的配置文件进行设置

静默

静默提供了一个简单的机制可以快速根据标签对告警进行静默处理.如果接收到的告警符合静默的配置,AlertManager则不会发送告警通知.

静默设置需要在Alertmanager的web页面上进行配置.

相关推荐
斯维赤6 分钟前
从 @Tool 到 Agent 流水线:LangChain4j 进阶教学,一个库打全套
java·后端
SimonKing17 分钟前
SSE项目`nexus-sse`持续优化,不一样的视觉效果
java·后端·程序员
斑鸠喳喳18 分钟前
读写锁模式 Read-Write Lock
java·后端
信誓旦旦的程序猿1 小时前
【Python 量化取数指南 #09】Python 拿港股通数据:港股通成交与港股财报实测
java·python·股票数据api·股票数据·股票数据api接口·股票api数据接口·股票量化数据api
小程序设计2 小时前
本科毕设避坑|大数据 / 单片机物联网 / 网络工程 / PLC / 机械设计选题与落地心得
java·hive·hadoop·单片机
卓怡学长2 小时前
w206基于SpringBoot的社区团购小程序设计与实现
java·spring boot·spring·intellij-idea
IT枫斗者枫哥7 小时前
MyBatis一对多分页:LIMIT 20,为什么凑不齐20个订单?
java·数据库
代码方舟7 小时前
Java数据工程:利用天远全网运营商三要素优化线上实名认证合规体验
java·人工智能
BBmmo7 小时前
我的 Java 学习笔记 · 第 7 篇:泛型与通配符
java
独泪了无痕7 小时前
Hutool之RandomUtil:随机数生成的终极利器
java·后端