Lazy loaded image
OpenClaw 运维复盘:5 个真实故障,没有一个是因为模型不行
字数 967阅读时长 3 分钟
2026-6-11
2026-6-11
跑了一段时间 OpenClaw 之后,我意识到一件事:大多数 agent 系统的文档只教你怎么写 prompt,不教你怎么运维。而真正让你睡不着觉的,从来不是 prompt 的问题。
以下是 5 个来自生产环境的真实故障。

生成了但没送到

stock_assistant 的 cron 每天准时跑完,报告也生成了,但飞书上什么都没收到。排查了一圈才发现:outbound 没配置。
这是一个很容易忽略的盲区。Cron 成功运行只意味着"生成"这一步完成了,投递是另一条独立的链路,有自己独立的故障模式。如果你只监控 cron 状态,你会以为一切正常。
投递链路是独立故障点,必须单独监控。

写盘风暴

Gateway 启动后 2 分钟内连续写盘 10 次。每次状态变更都直接持久化,没有任何合并或延迟写入策略。
配置迁移本身是正常的。但没有节流的写盘意味着两件事:SSD 寿命在加速消耗,而且在高并发下可能出现写入不一致。不是每次状态变更都值得一次 fsync。
写盘需要合并和延迟策略,这是一个容易被忽略的基础设施问题。

删 agent 不是删目录

清理 deal-agent 时发现,一个 agent 在系统中的依赖涉及四层:cron 定时任务、workspace 目录、credentials 凭证、routing 路由。删目录只清理了其中一层。
剩下的三层怎么办?幽灵 cron 会继续触发,过期凭证可能引发认证失败,残留路由会把消息发给不存在的 agent。Agent 的生命周期管理必须按依赖顺序从外到内清理——cron → routing → credentials → workspace。漏掉任何一层,系统都会在某个你没想到的地方翻车。

韧性靠切换速度,不靠重试次数

Eastmoney 数据源因为 IPv6 DNS 解析问题连续失败了 9 次。修复方案不是把重试次数从 9 调到 15,而是:切换主数据源 + 一次失败立即切换。
这是运维中一个反直觉但很重要的判断。韧性不是"能扛多少次失败",而是"多久能恢复"。重试 9 次等 9 分钟,不如 1 次失败后 5 秒切换。
Fallback 的关键是切换速度,不是重试次数。

降级链的延迟代价

gpt-5.5 超时 129 秒后自动降级到 glm-5-turbo,最终任务完成,但总延迟增加了 210 秒。
Fallback 链保障了可用性,这个设计是对的。但 210 秒的额外延迟意味着它适合 cron 任务,不适合交互场景。在交互场景下,用户等不了 3 分钟才看到第一次响应。
设计 fallback 链的时候,要区分批处理场景和交互场景。批处理可以容忍延迟换可用性,交互场景需要的是快速降级或并行请求。

统一判断

这 5 个故障没有一个出在模型层。它们全部出在基础设施和配置层:投递链路、写盘策略、生命周期管理、数据源切换、降级延迟。
如果你在搭建 agent 系统,花在运维设计上的时间应该至少和花在 prompt 工程上一样多。因为真正决定系统可靠性的,不是模型的能力上限,而是运行时环境的健壮程度。
上一篇
Agent 系统的真正故障点:不是模型,是接缝
下一篇
Agent 可靠性的真正问题:不是状态机还是判断力,是错误发生在哪一层

评论
Loading...