虎嗅

复杂业务场景下RCA Agent 的探索实践

核心内容总结

这篇文章围绕复杂业务场景下的AI根因分析智能体(RCA Agent)展开,核心是解决“AI写代码已经很厉害,但团队排障效率没跟上”的问题。文章指出:AI Coding提升了个人开发效率,但组织整体效能提升有限,排障成了新的生产力瓶颈;随着AI生成代码增多,人对系统的掌控力下降,AI排障从“可选”变成“必选”。文章重点分析了业务层排障的4大挑战及解决方案,介绍了RCA Agent的架构设计,并展望了未来AI自主化排障的方向。

一、为什么需要RCA Agent?——排障成了AI时代的“新瓶颈”

AI写代码(比如Claude Code)已经能搞定大部分编码工作,但软件工程并没有被完全解决:

1. 组织效能没跟上:DORA报告显示,AI Coding让个人效率提升明显,但团队整体效率提升有限——因为研发人员大部分时间还在排障(和开发一样占比最大)。

2. AI生成代码带来的新问题:比如OpenClaw用AI生成大部分代码后,上线新版本导致大量插件瘫痪,人无法完全理解自己的系统,必须用AI来诊断。

3. 业务层排障特别难:业务层故障直接影响用户体验和营收(比如视频时长下跌),但根因可能藏在Redis慢查询、GC问题或下游服务bug里,排查路径完全不确定——传统监控(Trace/Metrics/Log)经常有断点,比如推荐质量下降反而导致请求量上升(反常识),跨部门服务故障无法通过指标关联,需要人工沟通。

简单说:AI帮我们写了更多代码,但出问题后没人能快速找到原因,所以需要AI自己来“擦屁股”。

二、业务层排障的4大挑战及解决方案

挑战1:让AI“懂业务”——消除人和AI的“信息差”

AI能拿到监控数据,但研发脑子里还有很多业务常识(比如主播开播会导致送礼请求增加)、代码逻辑关系、指标拓扑(比如下游推荐服务可用率低→上游兜底率变→Feed下发量变)。这些信息AI没有,就无法跨越排障断点。

解决方案:构建“业务资产”——把代码抽象成AI能懂的“说明书”:

  • 离线沉淀:用Coding Agent生成核心代码的关系描述(比如错误码的业务含义、指标之间的依赖),存在知识库;
  • 实时生成:排障过程中,Agent把学到的经验沉淀成“技能”(Skill),加入知识库。

比如推荐质量下降导致请求增加的案例:AI如果懂“推荐质量和请求量的反向关系”,就能快速关联到下游服务的Core Dump问题。

挑战2:对抗告警噪声——别让AI在无效信息上“浪费钱”

系统里75%以上的告警是没用的(比如每天凌晨固定报警的可用率),但值班人员会因为告警疲劳忽略真故障(比如某个告警7天响15次,值班员直接静默,结果后来真出大事)。如果AI处理所有告警,成本极高(快手主站每月告警2-3万次,处理全量要花几百万)。

解决方案

1. 先筛置信度:用轻量Agent评估告警画像——比如看告警是否有周期性(凌晨报警置信度低)、阈值偏离程度(平时到98%,突然到60%要关注),过滤掉大部分噪声;

2. 证据分级:借鉴医院“循证医学”思路,把证据分成金字塔:最底层是原始信号(比如单个指标波动),往上是背景上下文(外部热点、服务依赖),再往上是多元融合证据(链路上的变更、历史故障模式),最顶层是直接因果(源码实锤、时间窗口内的变更)。AI优先关注高等级证据,避免被噪声误导。

挑战3:衡量AI的“不确定性”——用真实案例做“考试卷”

AI推理有不确定性:同一个问题多次输入,结果可能不一样;优化一个Case,可能引入新的Bad Case(比如召回单点抖动问题后,整体准确率反而下降)。

解决方案:建Benchmark体系——用真实故障案例当“考试卷”:

  • 收集案例:把线上真实故障(比如搜索量下降)的监控数据快照保存下来;
  • 评测效果:让AI在这些案例上跑,看它的线索命中率(有没有找到关键线索)、归因准确率等。

为什么不用仿真环境?因为业务问题太复杂(比如搜索量下降无法低成本模拟),真实案例更靠谱。

挑战4:对抗大模型“幻觉”——让AI“做不了的事交给工具”

大模型本质是概率预测器,不擅长数值计算(比如转换时间戳经常错)、趋势识别(看监控图判断上升下降会瞎编)。

解决方案:把确定性任务封装成工具(Tool):

  • 比如时间戳转换,让AI调用Python脚本;
  • 趋势识别用孤立森林算法(传统机器学习),而不是让大模型看图片或JSON数据。

这样既提高准确率,又节省Token成本,还能重复使用。

三、RCA Agent的架构设计——“快思考”+“慢思考”结合

AI不是万能的,所以架构分两层:

1. 快思考(Workflow):处理固定场景(比如Redis排障、Java异常)——这些问题有套路,用预设流程就能解决,延迟低、成本低。比如单点抖动问题,直接重启Pod就能抑制告警。

2. 慢思考(Agent):处理核心业务指标突变(比如Feed流请求量异常)——用Multi-Agent架构:

  • 主Agent:负责整体计划,动态调用SubAgent(把相近工具封装成SubAgent,比如代码分析SubAgent、变更查询SubAgent);
  • SubAgent通信:避免重复工作(比如某个SubAgent找到关键变更,其他SubAgent就不用再查RPC下钻);
  • 自进化:自动生成Few-shot案例(让小模型跑很多路径,找到正确答案后沉淀成经验),减少人工成本。

四、如何衡量RCA Agent的效果?——看“过程”比看“结果”更重要

核心目标是缩短MTTR(平均故障恢复时间),但故障发生频率低,所以重点看过程指标:

  • 有效线索率:Agent在排障过程中抛出的关键线索(比如“下游服务E发生Core Dump”)是否准确——即使没找到根因,线索也能帮工程师节省时间;
  • 归因准确率:找到真正根因的比例;
  • 归因时长:从告警到找到根因的时间。

目前整体准确率80%+(包括噪声过滤),但推理层面主要看线索准确率——因为根因难推,但线索有用。

五、未来展望:AI将重构排障体系

1. AI Native系统:现有监控是给人设计的(人认知带宽有限,需要抽象数据),但Agent能处理无限复杂数据,未来可观测体系可能被重构;

2. 组织架构变化:Agent不需要分工,能打破跨部门信息隔离(比如主站同学不用找下游部门人工确认故障);

3. 自主化闭环:从“辅助决策”到“自主处置”——Agent自动发现问题、拉群、抛线索、甚至自己修复故障,最终实现无人干预的闭环。

总结:RCA Agent不是取代人,而是帮人解决最头疼的排障问题。它的核心是“让AI懂业务、抗噪声、稳效果、避幻觉”,未来会越来越主动,成为研发团队的“智能排障助手”。