作者:监控易 来源:美信时代
发布时间:2026-06-15
一、静态阈值的困境
某省级三甲医院(华中地区)信息科曾遇到这样的烦恼:核心HIS系统在工作日上午9-11点就诊高峰期,CPU使用率经常达到85%以上,触发了大量“CPU过高”告警。但这些告警大多是“假阳性”——高峰期业务量大,CPU高是正常现象。运维人员被告警淹没,反而容易忽略真正的问题。而在凌晨低峰期,某台服务器CPU使用率从5%突然升到30%,虽然远低于80%的静态阈值,但实际上是挖矿病毒在运行,却没有任何告警。
静态阈值的局限性显而易见:无法适应指标的动态变化范围。业务高峰期正常值可能远高于平时,低峰期异常值可能远低于阈值。静态阈值要么产生大量误报,要么漏掉真正的异常。
监控易引入基于统计学的异常检测算法,让系统自动学习每个指标的“正常行为”,实时识别偏离正常的异常波动。
二、三种常用异常检测算法
1. 3-sigma(拉依达准则)
适用于服从正态分布或近似正态分布的指标(如CPU使用率、响应时间)。原理:在正态分布中,99.7%的数据点落在均值±3倍标准差范围内。超过此范围的值可视为异常。
监控易实现:系统按时间周期(如按小时、按天)计算指标的历史均值和标准差,实时值与均值比较,偏差超过3倍标准差时触发异常预警。
适用场景:稳定运行的系统,指标波动范围相对固定。
2. IQR(四分位距法)
适用于不服从正态分布、可能存在多峰或偏态的指标(如网络流量峰值)。原理:计算第一四分位数(Q1)和第三四分位数(Q3),IQR = Q3 - Q1,正常值范围通常为 [Q1 - 1.5×IQR, Q3 + 1.5×IQR]。
监控易实现:基于过去7-30天的历史数据,计算每个时间窗口的正常值范围,实时值超出范围时触发异常。
适用场景:流量、连接数等长尾分布指标。
3. 动态基线
适用于具有周期性规律的指标(如工作日/周末、白天/夜间差异明显)。原理:系统自动学习指标的周期性模式,建立动态基线。例如,某Web服务器的访问量,工作日9-11点是峰值,凌晨是谷值。动态基线会为每个时间点(或时间段)独立计算正常范围。
监控易实现:用户可设置“按天”“按周”周期,系统自动划分时间窗口,为每个窗口训练独立的均值和标准差。实时值与对应窗口的基线比较,偏离时告警。
适用场景:业务系统访问量、交易量等具有明显周期规律的指标。

三、算法选择与自动推荐
监控易支持用户为每个监测点手动选择异常检测算法,也支持自动推荐:系统分析历史数据的分布特征,自动推荐最适合的算法。例如:
· 数据基本服从正态分布 → 推荐3-sigma
· 数据存在明显长尾 → 推荐IQR
· 数据有周期性规律 → 推荐动态基线
· 数据无明显规律 → 建议保持静态阈值
四、实战效果对比
某金融平台(案例已匿名化)使用静态阈值时,日均告警500条,其中90%为误报(高峰期CPU高、内存高等)。引入动态基线异常检测后:
· 日均告警数:静态阈值500条,动态基线80条
· 误报率:静态阈值90%,动态基线15%
· 漏报率(真正问题未被发现):静态阈值30%,动态基线5%
· 运维人员满意度:静态阈值低,动态基线高
注:以上为内部测试环境数据,实际效果受业务场景和配置参数影响。
一次真实事件中,某服务器凌晨CPU使用率从5%升至35%,远低于80%静态阈值,但动态基线检测到该时段历史均值仅为8%,偏差超过3倍sigma,及时告警。排查后发现是挖矿病毒,避免了进一步扩散。
五、异常检测的配置与调优
步骤一:选择监测点
在监控易“设备管理”中,选择需要启用异常检测的监测点(如CPU使用率、磁盘IO)。
步骤二:选择算法
在监测点编辑页面,“异常检测”选项中,选择算法类型(3-sigma/IQR/动态基线)。也可选择“自动推荐”。
步骤三:设置敏感度
支持调整敏感度参数:3-sigma可调整为2.5倍或3.5倍标准差;IQR可调整倍数(1.5/2.0/2.5);动态基线可设置置信区间(90%/95%/99%)。敏感度越高,越容易触发告警。
步骤四:观察与迭代
启用后,建议观察1-2周,根据实际误报/漏报情况调整算法或敏感度。监控易提供“异常检测报告”,展示算法检测结果的准确性统计。

六、客户实践:某省级医保局的异常检测应用
某省级医保局使用监控易监控核心医保结算系统的服务器。过去使用静态阈值,每天收到200多条告警,大多是业务高峰期的正常波动,运维人员逐渐麻木。引入动态基线异常检测后:
· 告警量降至每天30条,均为真正需要关注的问题。
· 一次凌晨,系统检测到某台服务器的磁盘IO写入延迟异常升高,远超该时段的动态基线,自动告警。工程师排查发现是数据库备份任务配置错误,导致IO瓶颈,及时修复避免了白天业务高峰期的性能下降。
运维负责人评价:“现在收到的每一条告警都值得认真对待,不用再‘大海捞针’了。”该院启用异常检测后,运维人员处理有效告警的占比从不足20%提升至85%以上,运维响应效率显著提高。
七、结语
静态阈值是“一刀切”,无法适应动态变化的IT环境。监控易引入3-sigma、IQR、动态基线等统计学异常检测算法,让监控系统学会“分辨正常与异常”。当CPU在业务高峰期达到90%时不告警,在凌晨达到30%时却告警,这才是智能监控应有的样子。

问答环节
Q1:异常检测算法需要多少历史数据才能开始工作?
A:建议至少7天的历史数据作为训练样本。数据量越多,基线越准确。在数据不足的情况下,系统会自动降级为静态阈值模式。用户也可手动指定训练周期(如过去30天)。
Q2:动态基线能否识别节假日等特殊日期的流量模式?
A:支持。监控易允许用户自定义“特殊日期”规则(如法定节假日、公司年庆),将这些日期的数据单独建模,或排除在常规基线之外。例如,双十一当天的流量模式与普通工作日不同,系统可以单独为其建立基线,避免正常大流量被误报为异常。
Q3:如果指标本身没有明显规律,异常检测算法还适用吗?
A:对于无明显规律的指标(如随机波动的测试环境指标),建议继续使用静态阈值。监控易的“自动推荐”功能会分析数据特征,如果没有检测到周期性和正态分布,会提示用户使用静态阈值。用户也可以手动尝试IQR算法,它对非正态分布有一定鲁棒性。
#异常检测 #动态基线 #3-sigma #智能告警 #监控易智能一体化运维平台
内容责任声明
来源:监控易(北京美信时代科技有限公司)
作者:解决方案部 Dino
编辑:市场部 扬扬
初审:解决方案部 Dino
数据核实:技术部 刘美玲
终审:市场部 肖慧
本文内容基于公开信创政策及实际项目经验编写,数据来源可追溯。未经授权不得转载。
下一篇: 【数据治理】监控指标标准化