AIOps 是个挺火的词,但是真正落地效果较好的能力,往往是智能异常检测。它不要求值班人员一直盯图,也不要求每条业务曲线都手工维护固定阈值,而是通过机器学习算法学习时序数据的正常波动范围,实时生成动态基线和动态阈值,再由告警引擎识别异常并通知相关人员。
这篇文章基于夜莺智能告警的落地方式,说明智能异常检测适合解决什么问题、相对静态阈值有什么优势,以及在夜莺中如何配置和查看训练结果。
核心摘要
- 时序数据在服务正常时通常会呈现一定模式,监控系统可以基于这些模式识别异常。
- 传统静态阈值适合规则清晰、波动较小的指标,但在业务类指标、特殊日和快速增长场景下容易漏报或误报。
- 智能异常检测通过机器学习算法实时学习曲线规律,生成动态基线和动态阈值,可以减少人工调参成本。
- 夜莺智能告警通过独立的智能异常检测模块与夜莺监控集成,配置时只需选择智能告警并填写监控指标。
- 对有周期性的时序数据,比如 PV、活跃用户数、下单量、交易量等,智能异常检测通常更容易发挥价值。
AIOps 智能告警能力与流程总览
| 环节 | 传统静态阈值 | 智能异常检测 | 在夜莺智能告警中的体现 |
|---|---|---|---|
| 异常判断方式 | 人工设置固定上限、下限或同环比规则 | 学习时序数据规律,实时计算动态基线 | 选择“智能告警”后填写监控指标,无需手工填写阈值 |
| 适用指标 | 波动范围稳定、规则明确的指标 | 有周期性、趋势变化、峰谷差异较大的业务指标 | 适合 PV、活跃用户数、下单量、交易量等曲线 |
| 主要问题 | 阈值覆盖有限,容易漏报或误报 | 需要先训练模型并查看学习结果 | 规则列表提供“训练结果”入口,可查看动态基线 |
| 维护成本 | 依赖专家经验,需要随业务增长反复调整 | 基线随业务变化动态调整 | 曲线偏离基线后,由夜莺告警引擎发出通知 |
| 告警体验 | 特殊日、营销活动日容易产生噪音 | 通过动态阈值减少不必要打扰 | 用智能告警降低静态阈值带来的误报 |
时序数据异常检测是什么
对于所有在线业务,都会随着时间产生一些数据,这些数据称为时序数据。服务正常时,时序数据的变化通常会符合一定模式。监控系统可以根据这些变化模式,判断服务是否出现异常。
业内判断时序数据异常,主要有三种方式:
- 值班人员实时盯着重要的时序数据,根据经验判断是否异常。
- 使用监控产品,为关注的时序数据配置静态阈值,超过阈值就认为出现异常。
- 使用机器学习能力,动态学习时序数据规律,实时计算动态阈值,识别异常。
目前业界常见方式仍然是配置静态阈值来判断异常。但随着业务发展,静态阈值开始暴露出一些问题。
静态阈值告警为什么会失效
业务类监控数据峰谷差异大,静态阈值覆盖场景有限
很多业务类监控数据不适合只用静态阈值判断异常。比如下图中的曲线,常见业务数据往往峰值和谷值差距很大。如果上限阈值配置为 600,下降阈值配置为 10,图中红圈标记的异常就会漏报。

这类问题的根因不是阈值设置得不够细,而是业务曲线本身有明显周期和波动。固定阈值很难同时覆盖高峰、低谷和异常下跌。
特殊日和业务增长会改变正常基线
业务监控指标经常会因为“特殊日”,比如节假日、营销活动日,或者业务发展而产生变化。传统静态阈值或同环比策略在这种场景下,容易产生多次误报,给负责稳定性的同学造成不必要的打扰。
如下图所示,紫色曲线是当天的监控数据,同比 1 天和 7 天都低很多,但仍属于正常情况。如果使用静态阈值的同环比策略,就可能发出误报。

静态阈值依赖专家经验,维护成本高
静态阈值告警配置通常需要多轮调整之后才能正常使用。随着业务增长,阈值还需要不定期调整,人力维护成本会持续增加。

从根因看,静态阈值的问题不只是“阈值设得准不准”,而是它把持续变化的业务状态压缩成了几个固定数字。当曲线的周期、趋势和业务背景发生变化时,固定数字就容易失效。
智能异常检测如何降低告警噪音
智能异常检测基于机器学习算法模型实时生成动态基线,可以有效减少传统阈值方式带来的误报问题,也摆脱了对专家经验的强依赖,提升告警准确率,也提升值班同学的幸福感:)
下图是智能异常检测算法实时计算出来的动态基线,会随着业务增长动态变化。

和静态阈值相比,智能异常检测的关键差异在于:它不是要求人提前写死一个“正常范围”,而是让算法从历史曲线中学习正常波动区间,并根据实时数据判断当前曲线是否偏离基线。
下图总结了静态阈值和智能算法的区别:

哪些场景适合智能异常检测
智能异常检测相比静态阈值规则有很多优势,对有周期性的时序数据尤其合适。常见场景包括:
- 网页浏览量
- 活跃用户数
- 应用下载量
- 购物下单量
- 证券交易量
- 打车呼叫量
- ……
这些指标通常不是简单地“大于某个值就异常”或“小于某个值就异常”,而是要结合周期、趋势和历史波动判断。智能异常检测更适合处理这类曲线。
需要注意的是,智能异常检测不是为了替代所有静态阈值。对于规则非常明确、边界非常固定的指标,静态阈值仍然简单直接;对于周期明显、业务波动明显、人工调参成本高的指标,智能异常检测更适合。
夜莺智能告警如何落地
前面介绍了智能异常检测的优势和适用场景,下面看夜莺中的落地方案。
如果之前已经使用夜莺,再部署一个智能异常检测模块即可。该模块可以和开源夜莺监控无缝集成,整体架构如下图。

第一步:安装智能异常检测模块
智能异常检测模块完成安装之后,在夜莺告警规则配置页面,会多出一个智能告警选项。

第二步:创建智能告警规则
选择智能告警之后,只需填写要监控的指标,不需要填写阈值,点击保存即可。
之后在告警规则列表页,智能告警规则右侧会出现一个“训练结果”按钮。

第三步:查看训练结果和动态基线
点击“训练结果”,可以进入训练结果详情页。点击曲线详情,可以看到曲线学习出来的动态基线。
如果曲线偏离到基线之外,夜莺的告警引擎会发出告警通知。

自建还是购买夜莺智能告警
从成本角度看
如果团队已经有算法团队和研发团队,可以让两个团队根据业界已有方案落地实施。
如果没有算法或研发团队,招一个能把智能异常检测落地的工程师,成本至少是 20W。夜莺的智能告警企业版一年只有 1W+。在这个情况下,购买智能告警服务显然更划算。
从工作幸福感看
如果你在运维一线,且经常被静态阈值误报打扰,建议推动团队尽快开启智能异常检测功能。
如果团队没有这方面积累,可以购买夜莺的智能告警服务,减少日常生活中误报对自己的打扰。
FAQ
AIOps 智能告警最适合先从哪里落地?
从智能异常检测开始更容易落地。它直接对应监控告警中的高频问题:静态阈值难以覆盖业务曲线的周期变化、特殊日波动和业务增长趋势。
智能异常检测和动态阈值是什么关系?
智能异常检测使用机器学习算法学习时序数据的规律,并实时计算动态基线和动态阈值。动态阈值是异常检测落地到告警判断时的一种表现形式。
夜莺智能告警需要手工填写阈值吗?
选择智能告警之后,只需填写要监控的指标,不需要填写阈值。系统会通过智能异常检测模块学习曲线规律,并在训练结果中展示动态基线。
智能异常检测适合所有监控指标吗?
不适合。它更适合有周期性、趋势变化、峰谷差异明显的时序数据。对于规则明确、边界固定的指标,静态阈值仍然简单有效。
如何判断智能告警是否已经学到曲线规律?
在夜莺告警规则列表页点击“训练结果”,进入详情页后查看曲线学习出来的动态基线。如果曲线偏离到基线之外,夜莺告警引擎会发出告警通知。
结论
智能异常检测解决的核心问题,是让告警系统从“人工写死阈值”转向“算法学习正常波动范围”。对于业务类、周期性、持续增长的时序指标,它可以减少静态阈值带来的漏报、误报和反复调参。
夜莺智能告警的落地路径也比较直接:部署智能异常检测模块,在告警规则中选择智能告警,填写监控指标,查看训练结果和动态基线。对已经被静态阈值误报困扰的团队来说,这是 AIOps 能够较快产生实际价值的方向。
