2026.10.09
03|遥测的基础数据模型
目录
《可观测性工程》学习讲义 · 第 03 讲
可观测性数据不是越多越好。真正有价值的是,每种数据都承担清晰的职责,并且能够围绕同一次任务关联起来。
四种信号分别做什么
- Metric 展示整体趋势,适合告警;
- Trace 记录一次请求或任务经过的路径;
- Log 保存离散的执行信息;
- Event 描述某个时刻发生的状态变化。
Resource 则说明这些数据来自哪个服务、版本、进程或容器。Trace ID 和 Span ID 把分散的数据连接成同一次执行。

一个简单案例
用户要求 Agent 查询订单并解释退款失败原因。可以把任务建模为:
Trace: refund-investigation
├── Span: plan
├── Span: query-order-tool
├── Span: query-payment-tool
└── Span: generate-answer
每个 Span 记录开始时间、持续时间、状态和必要属性。工具超时时,在对应 Span 上记录错误;日志带上同一个 Trace ID;Metric 统计所有工具调用的失败率。
现实挑战:数据都有,却关联不起来
如果 Agent、模型网关和工具服务各自生成日志,却没有传播 Trace Context,工程师只能按照时间猜测哪些记录属于同一次任务。异步队列和并发执行会让这种猜测更加不可靠。
现象—假设—证据—判断
现象:同一用户任务出现多个失败日志,但无法还原顺序。假设包括日志缺失、时钟误差、上下文传播中断。证据显示 Agent 创建了 Trace ID,但进入工具队列后生成了新的根 Trace。判断:问题来自异步消息没有携带和提取 Trace Context。
修复后要验证:父子 Span 是否正确、日志是否包含 Trace ID、跨进程步骤是否仍属于同一条 Trace。
不要把所有内容塞进Span
Span 应保存用于筛选和定位的结构化属性。大段 Prompt、工具原文和敏感数据需要谨慎处理,可以保存摘要、长度、哈希或受控引用。否则不但成本高,还可能造成隐私风险。
小结
Metric 告诉我们规模和趋势,Trace 还原单次过程,Log 与 Event 补充细节,Resource 标识数据来源。它们只有通过统一上下文关联起来,才能形成真正的调查能力。
可观测性工程系列:上一篇:02|系统监控和可观测性有什么不同? · 下一篇:04|什么是 OpenTelemetry?
原文:LandX
相关文章
- 02|系统监控和可观测性有什么不同?《可观测性工程》学习讲义 · 第 02 讲 系统告警响了,却没人知道为什么,这是很多团队的真实处境。监控与可观测性并不是两种互相替代的工具,…
- 06|可观测性工程中的语义管理《可观测性工程》学习讲义 · 第 06 讲 数据格式一致,不代表数据含义一致。一个团队写 model,另一个写 llmname,第三个写 p…
- 11|构建 Agent Runtime 的实时可观测性《可观测性工程》延伸讲义 · 第 11 讲 传统可观测性经常用于事后排障,但 Agent Runtime 还需要在任务执行过程中感知风险:工…
- 08|基数、采样与成本《可观测性工程》学习讲义 · 第 08 讲 可观测性希望保留细节,但每一条 Span、每一个属性和每一天的保留时间都会产生成本。工程设计的目…