运行健康与可观测性

数字员工出问题的方式和传统软件不一样:它很少「崩溃」,更常见的是「还在,但答得不对」或者「已读不回」。这一页说明系统提供哪些信号面、故障时按什么顺序查、以及为什么「明确报错」比「沉默」重要得多。

// 一句话理解

最难排查的故障不是宕机,是假活:进程在跑、端口在听、监控是绿的,但消息进不来或出不去。可观测性设计的第一目标就是让假活变成一个能被看见的红灯。

六个信号面

信号回答什么在哪看
请求日志接口被调了吗、多快、返回了什么状态平台日志
错误日志唯一的真实错误出口,含堆栈平台日志(不对外暴露细节)
操作台账有副作用的动作是否发生、结果如何控制台 · 审计
服务器健康机器活着吗、磁盘内存够吗控制台 · 服务器
运行时健康逐个数字员工的网关状态、进程、24 小时错误计数控制台 · 服务器 · 运行时面板
通道存活每条消息渠道连着没有、最后一次成功收发是什么时候控制台 · 消息渠道

故障排查顺序

当有人报告「AI 不回复了」,按这个顺序查通常最快。顺序的依据是「越外层越容易坏」:

  1. 通道。先看消息渠道的存活状态与最后一次成功收发时间。断流是最常见的原因,而它的表现恰恰是「已读不回」。
  2. 运行时。看该数字员工所在服务器的运行时面板:网关状态、进程是否在、24 小时错误计数是否异常升高。
  3. 机器。看服务器本身:CPU 是否顶死、磁盘是否写满、内存是否耗尽。内存紧张的机器会表现为「时好时坏」。
  4. 凭证。看模型与外部服务的凭证是否过期。凭证类故障应当报告为「降级」而不是「全红」——系统还在,只是某条路走不通。
  5. 请求与错误日志。用请求标识把一次调用的完整链路串起来,定位到具体是哪一步失败。
// 假活的典型形态

网关进程存在但已经不再接收消息;产出任务卡在某一条坏记录上导致整台机器的统计停滞;一台内存紧张的机器上部分服务被系统回收但主进程仍在。这三种情况下常规存活探测都会返回正常——所以健康检查必须探测「最近一次真实成功」而不只是「进程是否存在」。

三条可观测性纪律

健康与降级的区别

把所有异常都报成「故障」会让告警失去意义。系统区分三种状态:

状态含义该做什么
健康各信号面正常,最近一次真实成功在预期窗口内
降级部分能力不可用但主路可用:某个凭证过期、某条通道断开、某个数据源不可达按影响范围通知对应负责人,不必全员告警
故障主路不可用:机器不可达、运行时不响应、核心接口持续失败按事故流程处理,先恢复再归因

运行时日志的边界

数字员工运行时产生的日志可能包含提示片段与文件路径。这类日志只过境不落库:可以在控制台按时间窗与级别查看,但不会写入平台的任何存储层。每一次查看动作本身进入操作台账,记录查看者、时间窗与文件名——但不记录内容。这样既保证了排障能力,也不让排障过程变成一条新的数据外流通道。

相关阅读