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页面上进行配置.

相关推荐
Rain的Java大神之路2 分钟前
别再死磕 MySQL 了:向量数据库与 RAG 生产落地实录(Java 工程师专场)
java·后端·面试
七夜zippoe3 分钟前
Spring AI 是什么?Java 工程师的 AI 开发第一站
java·人工智能·spring·ai·开发
是真的小外套13 分钟前
2023年软考中级信息安全工程师|选择题考点+5道案例分析真题解析(含答案)
java·服务器·网络
会编程的吕洞宾33 分钟前
Spring AI 2.0 结构化输出实战:让大模型返回精准 JSON 不再“抽风“,准确率从 78% 拉到 99%
java·后端
速捷工控 PLC触摸屏还原程序33 分钟前
S7-200 SMART程序上传提示密码?维修、改造和换机怎么选处理路径?
运维·服务器
项目題供诗36 分钟前
ai大模型(三)
java
鬼手点金1 小时前
Harness 工程:模型之外的竞争力
服务器·人工智能·深度学习·机器学习·bug
wangjialelele1 小时前
一文梳理 Spring Cloud 核心组件:Eureka、Nacos、OpenFeign、LoadBalancer 与 Gateway
java·spring boot·spring·spring cloud·微服务·nacos
用户6222884048191 小时前
站在JDK的角度理解线程池:从execute 到 getTask 一篇讲透
java·面试
Wang's Blog1 小时前
Java 项目实战: 交友项目 - 个人资料管理的需求分析与接口设计
java·开发语言·交友