搜索
首页
大数快讯
大数活动
服务超市
文章专题
出海平台
流量密码
出海蓝图
产业赛道
物流仓储
跨境支付
选品策略
实操手册
报告
跨企查
产业带
导航
知识体系
工具箱
产业园
更多
百科
找货源
跨境招聘
DeepSeek
首页
>
《AI OS的升维之旅》文章系列第六篇:可观测性升维,三条 trace 链路覆盖所有盲区
>
《AI OS的升维之旅》文章系列第六篇:可观测性升维,三条 trace 链路覆盖所有盲区
AI驱动数字化转型
2026-07-17
2
导读:我构建了一套多智能体协同系统,取名为三体架构。三个体各有独立职责。《AI OS的升维之旅》文章系列第六篇:可观测性升维,三条 trace 链路覆盖所有盲区。
我构建了一套多智能体协同系统,取名为三体架构。三个体各有独立职责。OpenClaw 是意识中枢,负责理解意图、路由任务、管理对话,不做任何有副作用的操作。Hermes 是执行层,负责搜索、文件操作、浏览器自动化、shell 命令以及内容写作,不做决策。Codex 是编码层,负责写代码、重构、调试、测试。三个体通过 sessions_spawn 通信,不共享内存,不共享进程空间,故障互相隔离。
支撑这套系统持续进化的是一套知识基础设施,以 Obsidian 为基础的知识库。每次写作完成,新概念自动写入原子笔记,文章索引自动更新,知识图谱重新关联。知识不会停在原地,它会在系统内部流动,从原始对话逐渐提炼成可复用的结构化知识。
三体加 Obsidian 知识库构成了一个从意图理解到执行落地到知识沉淀的完整闭环。
本文是「AI OS 升维之旅」系列第六篇。
三体架构的故障定位问题
三体架构把单进程拆成三个独立体。拆分解决了故障隔离问题,也制造了新问题:出了故障怎么定位。单进程时代一份日志够了,三体模式下需要追踪 trace_id 在三个进程之间的传播。哪个体出了问题,问题发生在哪一步,影响范围多大。答案不能靠猜。
三层监控链路:SabreTiger 剑齿虎
SabreTiger 剑齿虎就是为这个场景设计的。它在三体之上包裹了三层监控链路,覆盖从进程存活到宿主机状态到 trace 追踪的全部需求。
链路 A:核心 trace
链路 A 是核心 trace。三体各体写入管道文件,tri-tracer-v3 做字节偏移增量读取,每条
服务
独立 OTel Resource。tri-trace-ctx.py 的 new 和 inherit 机制生成 trace
id 继承链。父进程 spawn 子任务时继承 trace
id,子任务的每个 span 都带着父进程的上下文。
链路 B:守护进程
链路 B 是守护进程。sabretiger-guardian.py 监听 OpenClaw SQLite 和 Hermes processes.json 的变化。不主动轮询,被动捕捉事件。SQLite 有新 session 开始或 Hermes 有新的子进程启动时,guardian 写入一个 span。这个链路的价值在对事件敏感,不对轮询敏感。
链路 C:心跳
链路 C 是心跳。tri-heartbeat.py 每三十秒检查三体进程存活和宿主机 CPU 内存和 Docker 容器状态。Windows 上 tasklist 过滤镜像名,Linux 上 pgrep。检测结果汇总写入 tri
body
summary Span。
数据流转与可视化
三条链路通过同一个管道文件汇入 OTel Collector。tri-tracer-v3 从管道文件读取后组装成 OTLP Span,发送到 OTel Collector 的 4317 端口。Collector 分发到 DataBuff、Tempo、Prometheus、Loki。Grafana 做统一可视化。
以一个 span 的生命为例。用户发一句搜一下昨天的日志。OpenClaw 路由匹配后 sessions
spawn 创建子会话。tri-trace-ctx.py inherit 机制从当前 trace
id 生成子 trace
id,继承的 span 记录 start
时间
戳和父 span ID。Hermes 收到 task 开始执行,hermes-hook.py 在 exec 结束时写入一行 JSON 到 tri-tracer-pipe.json,字段包括 service name 固定为 hermes,span name 为 exec
shell,status 为 OK 或 ERROR,执行时间戳,attributes 字典记录命令和退出码。tri-tracer-v3 通过字节偏移增量读取管道文件,读取到新行后解析 JSON,组装 OTLP Span。每个 service 有独立的 OTel Resource,resource 属性包含 service name 和对应的容器名。OTLP Span 发送到 OTel Collector 的 4317 端口,Collector 根据配置分发到多个后端。DataBuff 的 Doris 做底层存储,trace
dc
span 表按天分区,七天 TTL 自动过期。Tempo 也收到同样的 span 用于快速检索。Grafana 上可以按 trace_id 检索整个调用链。写完 span 后 Hermes 把执行结果序列化回传给 OpenClaw,OpenClaw 的反序列化完成时写入一个 response span,status 同样记录 OK 或 ERROR。从请求到返回的三体链路变成了 Grafana 上一条带时间轴的 trace 链。
心跳检查逻辑
tri-heartbeat.py 的检查逻辑很直接。TRI
BODY
PROCS 字典里三个 key 对应 openclaw、hermes、codex,每个有 exe 名称和描述。Windows 上 tasklist 过滤镜像名,Linux 上 pgrep。每体写入独立心跳 Span 到 DataBuff。tri
body
summary 汇总总存活数和死亡数。除此之外还检查宿主机状态。CPU 负载走 wmic cpu get loadpercentage,内存走 wmic OS 获取 TotalVisibleMemorySize 和 FreePhysicalMemory。宿主机数据写入 host
health Span。Docker 容器状态通过 docker ps 检查,每个容器写入 docker
container Span。
智能分析
DataBuff 使用 Doris 4.1.1 做底层存储。trace
dc
span 表按天分区,七天 TTL 的数据保留策略。metric
service
trace 每分钟做一次聚合。DataBuff 注册了两位数字专家,一位 Trace 分析师,一位主机健康分析师,都走
DeepSeek
Chat 模型。分析师不参与决策,只做分析
报告
。在 Grafana 上看到告警时,分析师的分析报告已经生成在 DataBuff 的 Web UI 上。
资源消耗
三条链路、两个 Collector、五个后端、一套 APM。这个可观测性体系本身的资源消耗是多少。tri-tracer-pipe.json 每二十四小时约五到十 MB。tri-tracer-v3 的 Python 进程稳定在 30MB RSS。OTel Collector 的内存根据负载不同在一百到三百 MB。Doris BE 约五百 MB,FE 约两百 MB。全部加起来约 1GB 内存。在 32GB 总内存的笔记本上占比百分之三。对于一套企业级可观测性来说,这个成本是划算的。同等能力的 SaaS 方案月费在五十美元以上,这里用 1GB 内存换来了同等水平的 trace 存储和可视化能力。
完整的《AI OS升维之旅:从单体到三体·社区版到定制版的工程跃迁》全书,关注公众号或者加我好友索取pdf。
【声明】内容源于网络
0
0
AI驱动数字化转型
专注AI,促进智造行业数据衍生,服务智能制造企业的数字化、智能化,聚焦大模型私域部署、大模型微调、数据清洗、AI模型训练、私域知识库及agent技术延展等。行业智能,落地为先。
内容
1046
粉丝
1
关注
在线咨询
AI驱动数字化转型
专注AI,促进智造行业数据衍生,服务智能制造企业的数字化、智能化,聚焦大模型私域部署、大模型微调、数据清洗、AI模型训练、私域知识库及agent技术延展等。行业智能,落地为先。
总阅读
8.0k
粉丝
1
内容
1.0k