SRE:如何提高报警有效性?
为什么要提升<报警有效性>
过多的报警会让负责人麻木
过多的报警会增加短信和电话的成本
提升根因定位效率
如何定义<报警有效性>
不漏报
不误报
不重报
不延报
如何量化
MTTF (Mean Time To Failure,平均无故障时间):平均正常运行时间
MTTR (Mean Time To Repair,平均修复时间):故障发生到故障修复之间的平均值
MTBF (Mean Time Between Failure,平均失效间隔):两次故障之间的平均值
报警次数,有效报警量
漏报次数
重复报警数
故障感知时长
报警认领率
如何提升
服务提升:从源头解决问题,减少报警
阈值合理:故障、预警的阈值都要合理
故障自愈:可以有效降低短信和电话报警次数,减少人工故障处理成本。(但不能依赖)
排除抖动:最常用的方式是连续出现问题再报警
降低维护成本:如规范监控指标,使用统一sdk、脚本等
监控完善&自感知
- 抓手-分级合理:对监控对象进行分级(如高优服务)、对报警进行分级(严重故障电话报警)。如永久排除非线上环境的机器。
- 多维度监控完善:业务监控、服务监控、基础监控......
- 借助程序:自动感知新的服务、新的接口、新的调用关系......(防止系统变更导致漏报)
减少重复报警
- 报警收敛:如一个集群有多台机器出现问题,就需要收敛
- 合理设置报警间隔
- 报警接收人合理:可以设置值班制度+紧急上升
- 落实责任制:如报警认领率、成本分摊