2、告警分级与分类:告警等级定义(P0-P4)、告警分类方法(基础设施、应用、安全、业务)、分级响应策略

告警分级与分类,说白了就是给告警「定个位」。

我见过太多团队,半夜被P4的告警吵醒,结果发现只是磁盘用了80%。而真正P0的「数据库挂了」,反而因为告警太多被淹没了。嗯,这就是分级没做好的典型症状。

2.1 告警等级定义:P0到P4

我个人习惯用P0到P4五级体系。为什么是五级?因为三级太粗,七级又太细。五级刚刚好,一线运维能记住,值班同学也能快速判断。

等级 定义 响应时间 典型场景
P0 核心业务完全不可用 立即响应(≤5分钟) 支付链路中断、数据库主库宕机
P1 核心功能严重受损 15分钟内响应 API超时率>50%、缓存集群降级
P2 非核心功能异常 30分钟内响应 报表系统延迟、部分用户登录失败
P3 潜在风险或轻微异常 4小时内响应 磁盘使用率>85%、单节点CPU飙高
P4 信息通知类 下一个工作日 证书即将过期、版本升级提醒
⚠️ 避坑指南: 我曾经见过一个团队,把所有告警都设成P2。结果呢?真正的P0来了,大家还在想「是不是又跟上次一样虚惊一场?」。记住:告警等级不是拍脑袋定的,是跟SLA绑定的

2.2 告警分类方法

告警分类,我习惯分成四类:基础设施、应用、安全、业务。你想想看,这四类其实对应了运维的四个视角:

  • 基础设施告警:服务器、网络、存储这些「硬家伙」。比如CPU、内存、磁盘、网络延迟。这类告警的特点是「物理性」强,通常有明确的阈值。
  • 应用告警:中间件、数据库、微服务。比如MySQL慢查询、Redis内存碎片率、Nginx 5xx比例。这类告警需要结合业务流量来判断。
  • 安全告警:入侵检测、DDoS攻击、异常登录。这类告警的特点是「时效性极强」,晚一分钟可能就出大事。
  • 业务告警:订单量骤降、支付成功率下跌、用户注册失败。这类告警最「敏感」,也最容易误报。
💡 我的经验: 业务告警最好跟「同比/环比」结合。比如「订单量下降50%」比「订单量低于1000」更有意义。因为凌晨3点订单量本来就低,你设个固定阈值,那不得天天半夜被叫起来?

2.3 分级响应策略

分级响应,说白了就是「什么人、在什么时间、用什么方式、处理什么告警」。

我建议这样设计:

  1. P0响应:全员拉群,电话通知。值班SRE必须在5分钟内确认,10分钟内启动应急预案。我记得有一次线上P0,我们直接启用了「熔断+降级」策略,5分钟恢复核心链路。
  2. P1响应:值班SRE处理,15分钟内响应。如果30分钟解决不了,自动升级为P0。这个「升级机制」很重要,防止有人「死扛」。
  3. P2响应:日间处理,30分钟内响应。可以走工单流程,但要有明确的「处理人」和「截止时间」。
  4. P3响应:记录到运维看板,4小时内处理。这类告警通常是「慢性病」,比如磁盘慢慢涨、内存慢慢泄漏。
  5. P4响应:走变更流程,下一个工作日处理。比如证书更新、版本升级。
🔑 核心原则: 告警分级不是「定死」的,而是「动态」的。比如一个P3的「磁盘使用率85%」,如果连续3次告警都没处理,系统应该自动升级为P2。这叫「告警疲劳度检测」——我自己的项目里就踩过这个坑,磁盘从85%涨到95%用了两周,没人管,最后直接宕机。

2.4 知识体系总览

下面这张图,是我梳理的告警分级与分类的核心逻辑。你可以把它贴在工位上,或者放到运维手册里。

告警分级与分类知识体系 告警等级定义(P0-P4) 告警分类方法 基础设施 应用 安全 业务 分级响应策略 P0:立即响应 P1:15分钟 P2:30分钟 P3:4小时 P4:次日 核心原则:动态升级 + 响应时效 + 责任到人
💡 一个小技巧: 告警分级不是「一劳永逸」的。我建议每季度做一次「告警分级复盘」,看看哪些告警被降级了、哪些被升级了。你会发现,有些P3告警其实比P1还危险——比如「证书过期」这种慢性病,一旦爆发就是P0。

好了,告警分级与分类就聊到这儿。记住:好的分级,能让你的团队睡个好觉;差的分级,能让你的团队天天「狼来了」


公众号:蓝海资料掘金营,微信deep3321