AI Agent 上线后最常被追问的一个问题是:「线上出了问题你怎么定位?」这背后考察的是 LLM 应用的可观测性(Observability)能力——它和传统微服务的 metrics / traces / logs 三件套一脉相承,但因为 LLM 的非确定性,又多了一层 Eval(结果质量评估)。本文按「Trace → Log → Eval」三层模型拆解生产环境 Agent 调试的完整链路。
## 一、为什么 Agent 比传统服务更需要可观测性
传统微服务的故障模式是「服务超时」「5xx 错误率上升」,debug 时看 latency、error rate、调用链即可。AI Agent 的故障模式完全不同:HTTP 200 但答案错了;同一个 prompt 改一个字就胡说八道;Tool 调用陷入死循环;上下文窗口撑爆。这些「**静默错误**」只有靠 Trace(调用链)+ Log(结构化日志)+ Eval(结果质量)才能发现。
面试官追问「你们 Agent 怎么监控」时,**只答 Prometheus / Grafana 是不够的**——它们只能告诉你「服务还活着」,无法告诉你「Agent 答得对不对」。
## 二、Trace:让 Agent 的每一步都可回放
Trace 的核心是记录 Agent 决策链上的每一次 LLM 调用、Tool 调用、状态转换,把黑盒变成白盒。
**主流工具对比**:
| 工具 | 类型 | 优势 | 适合场景 |
|------|------|------|----------|
| LangSmith | 商业 SaaS | 与 LangChain / LangGraph 深度集成 | 已经在用 LangChain 生态 |
| Langfuse | 开源 + 托管 | OpenTelemetry 兼容,可自托管 | 数据合规要求高 / 成本敏感 |
| Arize Phoenix | 开源 | Trace + Eval + Drift 一体 | 聚焦模型质量漂移 |
| Helicone | 托管 | 极简接入,OpenAI 兼容 proxy | 不想改业务代码 |
**选型决策树**:技术栈已经在 LangChain → LangSmith;自托管 / 数据合规 → Langfuse;想免费 + 强 Eval → Phoenix;想一行代码接入 → Helicone。

## 三、Log:结构化记录每一次状态变化
Trace 看调用链,Log 看上下文细节。一次合格的 Agent Log 应包含:
- **LLM 调用**:model、prompt、completion、token 数、latency、cost
- **Tool 调用**:tool_name、input、output、status、retry_count
- **状态转换**:plan_step → executing → done / failed
- **用户反馈**:thumbs up/down、regenerate 点击、人工修正
**反模式**:把 LLM response 拼成长字符串塞进 stdout。**正确做法**:JSON Lines 格式 + 统一 trace_id 串联;每条 log 都要带 session_id、user_id、agent_version 三个字段。

## 四、Eval:离线 golden set + 在线 A/B + 线上抽样
Trace 和 Log 回答「发生了什么」,Eval 回答「答得好不好」。三层 Eval 体系:
1. **离线 Eval**:维护 200-500 条 golden set,每次模型升级 / prompt 改版都跑一遍回归。指标:准确率、工具调用成功率、答案相关性。
2. **在线 A/B**:新 prompt 灰度 10% 流量,对比「用户 thumbs up 率」「平均对话轮次」「转人工率」三个核心指标。
3. **线上 human-in-the-loop**:抽样 1-5% 的真实对话让人工打分,建立 ground truth 反哺离线 golden set。
**关键点**:不要追求「完美 golden set」——200 条覆盖核心场景的样本比 5000 条含噪声的样本更有价值。
## 五、面试答题模板(生产工程师视角)
按 STAR-L 法则(Situation / Task / Action / Result / Learning)展开:
1. **S**:业务背景——我们 Agent 服务 50 万 DAU,每天 100 万次对话
2. **T**:问题——上线 2 周后发现 3% 对话转人工率异常升高
3. **A**:定位步骤——查 Trace 发现 tool_call 失败率从 0.5% 涨到 4.2% → 查 Log 发现是某上游 API 限流 → 看 Eval 发现用户在工具失败后倾向于追问
4. **R**:结果——加 fallback tool + 监控告警后转人工率回到 1.8%
5. **L**:教训——Trace 必须 100% 覆盖所有工具调用,不能依赖默认采样
面试官通常会让候选人反问或谈设计思路,反问「你们 Trace 采样率多少?」「Eval 怎么避免 golden set 漂移?」都是加分项。
## 六、行业影响与展望
可观测性正在从「事后查日志」转向「事前预警」——基于历史 Eval 趋势自动检测 prompt 漂移(同一 prompt 在不同版本模型上的质量曲线变化),并触发自动回滚或告警。预计 12 个月内,**Agent Observability Platform** 会成为继向量数据库之后的下一个 LLM Infra 热门赛道。Langfuse / Phoenix 等开源项目已经在朝这个方向演进。
## 七、关键点回顾
- Agent 可观测性 = Trace + Log + Eval,比传统微服务多一层 Eval
- Trace 工具选型看技术栈 + 合规要求,LangSmith / Langfuse / Phoenix 各有侧重
- Log 必须结构化 + 统一 trace_id,不能 stdout 拼字符串
- Eval 三层体系:离线回归 + 在线 A/B + 线上抽样
- 面试用 STAR-L 答「线上问题怎么定位」是高分模板
## 参考资料
**官方文档**
- Anthropic: Building Effective Agents - 2024-12
- Anthropic Docs: Develop Tests - 持续更新
- arXiv 2310.08419: Holistic Evaluation of Language Models - 2023-10
- arXiv 2307.13702: LLMs as Agent Evaluators - 2023-07
**开源项目**
- Langfuse Docs: Observability & Tracing - 持续更新
- Arize Phoenix: Open-source LLM Observability - 持续更新
- Anthropic Docs: Agent Loops & Tool Use - 持续更新
- Anthropic Docs: Tool Use Overview - 持续更新
**行业报道**
- 量子位:AI 与机器人资讯首页 - 持续更新
- Anthropic Blog: Engineering & Research - 持续更新
**社区讨论**
- HN Algolia: AI Agent Tracing 讨论聚合 - 持续聚合
- HN Algolia: LLM Observability 搜索 - 持续聚合
**对比基准**
- Anthropic Engineering: Building Effective Agents - 持续更新
- Anthropic Docs: Tool Use Overview - 持续更新
---
> **本文由 AI 生成**。内容基于公开资料整理,可能存在事实偏差,引用链接请以原始来源为准。
