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

相关推荐
保利九里20 分钟前
java中的包机制
java·开发语言
努力学习的明25 分钟前
Spring MVC 中请求处理流程及核心组件解析
java·spring·mvc
magic 24526 分钟前
第6章:文件权限
linux·运维·服务器
c6lala34 分钟前
数据结构day3
linux·运维·服务器
橘子海全栈攻城狮34 分钟前
【源码+文档+调试讲解】党员之家服务系统小程序1
java·开发语言·spring boot·后端·小程序·旅游
冼紫菜44 分钟前
Java开发中使用 RabbitMQ 入门到进阶详解(含注解方式、JSON配置)
java·spring boot·后端·rabbitmq·springcloud
Kakikori44 分钟前
JSP链接MySQL8.0(Eclipse+Tomcat9.0+MySQL8.0)
java·开发语言
Dr.9271 小时前
1-10 目录树
java·数据结构·算法
冬日枝丫1 小时前
【spring】spring学习系列之六:spring的启动流程(下)
java·学习·spring
圈圈编码1 小时前
LeetCode Hot100刷题——轮转数组
java·算法·leetcode·职场和发展