用 AI 排障的这几周,我总结出一条最值钱的判断标准

发布于 2026年09月08日 ❤ 0 👁 30 阅读 💬 3 评论

用 AI 排障的这几周,我总结出一条最值钱的判断标准

背景是智汇社区从今年开始把不少日常运维脚本迁到了 AI 辅助写的状态,我也慢慢养成先让模型给方案、再自己审代码的习惯。前阵子社区偶尔出现接口偶发超时,白天没事,晚上高峰就报 502,查了两天没头绪。

我一开始的做法是让 AI 直接"修复超时",结果它给了一堆并发调优、加缓存、改 nginx 配置的建议,听着头头是道,但都是隔靴搔痒——因为问题根因根本没定位清楚。这其实是大部分人用 AI 写代码/排障最容易踩的坑:把 AI 当成"直接给答案"的工具,而它本质上是"在给定上下文里补全"的工具。上下文给错了,答案再好也是错的。

后来我换了个思路:第一步不碰代码,先把问题讲清楚。我把 nginx 错误日志、supervisor 日志、最近一次改动 commit 记录、以及请求流量的时间段分布,这几样东西原样贴给模型,然后只问一句"根据这些日志,你觉得最可疑的环节在哪,为什么"。这一步逼着模型基于证据推理,而不是凭经验编故事。

它圈出了两个可疑点:一个是某个 worker 进程连续几小时内存缓存在缓慢上涨没释放,另一个是数据库连接池在高峰时段的等待数异常。我顺着这两个点去查,发现是我上个月上线的一个定时任务,每半小时全量扫一次某个表并在内存里重建索引,白天数据量小没事,夜里累积到一定程度,内存占用翻倍,触发旧进程被系统 OOM 杀,新进程冷启动又赶上流量高峰,就出现间歇超时。

修复其实很简单:把全量重建改成增量更新,加上内存上限保护,再给任务加了错峰时间。改动不到三十行,问题当晚就稳定了。

这件事让我真正接受了用 AI 工作的一个原则:AI 的价值在"缩小排查范围"和"帮你看漏了什么",而不在"直接改对"。你越早把原始证据喂给它、越早让它做"假设优先级排序"而不是"直接输出修复代码",它的准确率会高一整个量级。反过来,你越是想省事直接要答案,越容易被它那种流畅的自信带进沟里。

可复用的方法我记成了三步:一,出问题先整理原始日志和时间线,别急着贴需求让 AI 改;二,让 AI 先给出"最可疑的三个环节和理由",逼它做排除法;三,对修复合入前,自己把改动逐行审一遍,确认改的是根因不是表象。这三步听着像废话,但真正照着做的人不多,多数人还是习惯拿到问题就甩给 AI 要个补丁。

评论 (3)

Meicheng · 站长
Meicheng · 站长 2026年09月09日
这篇把关键点讲透了,尤其是流程/坑的部分很有参考价值,已收藏,后续也会试试作者提到的方法。
Meicheng · 站长
Meicheng · 站长 2026年09月09日
「先给证据,再让它做假设优先级排序,而不是直接要答案」——这条我深有体会。补一个细节:把日志贴给模型时,时间线比零散片段重要得多。我习惯先把报错按时间戳排成一条线,再标注「哪个动作之后开始出现」,模型给出的可疑点准确率高很多。反过来如果只丢一堆报错堆,它大概率顺着错误信息往下编,而不是往回找触发点。定位根因这件事,上下文的质量决定 AI 的上限。
Meicheng · 站长
Meicheng · 站长 2026年09月12日
这条判断标准很值钱。我补充一个维度:除了看「AI 给的是不是确定答案」,还要看它有没有主动说「我不知道」或「这个需要验证」。一个排障时敢承认不确定的 AI,比一个永远胸有成竹的 AI 靠谱得多——前者你能接着查,后者可能把你带沟里。

登录 后参与评论