
bug: ADK integration does not have pretty traces
快速结论:此报错发生在用户通过 OpenTelemetry (OTel) 集成 Google ADK 并将追踪数据发送到 Langfuse 时。核心问题是 OTel 采集的结构化数据无法被 Langfuse 解析为“漂亮”的聊天对话视图。优先排查是否依赖了原生 Langfuse Python SDK 对根 span 进行字符串化输入/输出富化。
问题场景
用户按照 ADK 集成指南(基于 OTel 集成)配置并成功将追踪数据发送到 Langfuse 平台,但在查看 trace 或 session 时,缺少示例文档中展示的“pretty”可视化选项。相反,只能看到原始的、难以阅读的结构化输出,需要多次点击才能查看完整对话。该用户期望像使用 Arize SDK 时那样获得明确对话渲染。
报错原文
This is a known limitation with how Langfuse currently processes OpenTelemetry traces. The "pretty" chat view depends on input/output data being parseable as ChatML messages, and OTel-ingested traces (like those from Google ADK) typically send structured data that doesn't meet this requirement.
原因分析
Langfuse 的“pretty”聊天视图依赖数据能够被解析为 ChatML 消息格式。通过 OTel 集成的 Google ADK 发送的结构化数据(通常是 JSON 等复杂格式)不符合此解析要求,因此系统无法提供格式化聊天显示和列表视图预览。所有数据实际上已正确存储,可在单独的观察细节视图中查看,但不会像原生 Langfuse SDK 追踪一样渲染出漂亮视图。该问题被 Langfuse 团队标记为已知限制,跟踪于 issue #9970。
环境排查
- Langfuse 部署方式:云版 (Langfuse Cloud) 或自托管
- 集成框架:Google ADK
- 采集方式:OpenTelemetry (OTel) 集成
- 是否引入了 Langfuse Python SDK 配合 OTel 进行根 span 富化(如设置字符串化的 input/output)
解决步骤
- 确认数据存储正常:在 Langfuse UI 中检查单个观察细节视图,验证追踪数据已正确存储但未以“pretty”方式展示。
- 优先尝试使用 Langfuse Python SDK 配合 OTel 进行根 span 富化:参考 Google ADK 集成指南中的代码示例,通过 Langfuse Python SDK 显式地在根 span 上设置字符串类型的 input/output。这可以使数据被 ChatML 解析器识别并触发“pretty”视图渲染。
- 跟踪官方进展:关注 Langfuse 项目 issue #9970,该问题正在跟踪 OTel 集成对“pretty”视图的全局支持。
验证方法
在完成根 span 富化后,刷新 Langfuse 平台上的 trace 或 session 页面,检查是否出现了“Pretty”切换按钮或聊天对话样式的渲染视图。数据点应能展示为可读的格式化对话,而不是原始的 JSON 结构。



