关于 linking-errors-to-traces
面向分析人员和 Agent 的 PostHog 技能,通过共享标识符将异常事件与录屏、追踪、跨度及日志关联起来。它指导执行有范围的查询并说明数据缺口,不把时间或服务相似性当作关联证据。
主要功能
- 01查询错误发生记录
- 02关联事件与会话录屏
- 03获取精确追踪和跨度
- 04按追踪 ID 查找日志
- 05报告查询范围与数据缺口
适用场景
- 01根据问题 ID 或 URL 调查问题
- 02将错误发生记录与会话回放核对
- 03查找异常对应的追踪和日志
MCP 相关
使用 PostHog MCP 工具查询错误事件、录屏、追踪、跨度、日志及应用链接。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ posthog/ ai-plugin --skill linking-errors-to-traces安装后在 Claude Code 中输入/linking-errors-to-traces确认已加载。
附带文件references/finding-exceptions.mdreferences/finding-trace-logs.md
详细介绍
将错误关联到跟踪记录和日志
使用共享 ID 关联记录。服务和时间相同,并不能证明某条日志或跨度属于某个错误。
查找异常
对于问题 ID 或 URL,调用 posthog:query-error-tracking-issue-events,并设置
include: ["exception", "correlation"]、filterTestAccounts: false 和较小的
limit。除非用户要求提供多个,否则选择一个发生记录。注明结果是否为样本。
对于发生记录 ID 或会话 ID,请阅读 finding-exceptions.md 了解准确的查询方法。 如果用户指定了时间范围,请使用该范围。如果没有找到事件,请说明 检查的时间窗口。不要仅凭有界搜索就断言事件从未存在。
追踪 ID
- 回放: 如果事件包含
$session_id,请使用该 ID 调用posthog:session-recording-get。found: false表示未找到录制内容;错误或 会话仍可能存在。如果录制内容存在,请使用posthog:generate-app-url生成/replay/{id}链接。 - 精确跟踪: 对于每个唯一且非零的 32 位十六进制
$trace_id,使用该 ID 调用posthog:apm-trace-get,并设置excludeAttributes: true。 使用其_posthogUrl作为跟踪记录链接。如果事件包含$span_id,请将其与 返回的跨度 ID 比较,按十六进制比较并忽略大小写。结果为空表示未找到该跟踪 ID 对应的保留跨度。日志仍可能存在。 - 会话跟踪候选项: 如果事件缺少
$trace_id,且用户询问会话跟踪记录,请 使用posthog:apm-attributes-list查找存储会话 ID 的跨度属性。如果存在明确 的键,请调用posthog:query-apm-spans,使用精确的span_attribute筛选器、 错误发生前后的短时间窗口、flatSpans: true和较小的limit。这会查找匹配的 子跨度和根跨度。对于需要链接的候选项,请调用posthog:apm-trace-get。将这些 标记为会话匹配项。仅凭时间无法证明是哪一个请求引发了错误。 - 同一跟踪记录的日志: 如果事件包含跟踪 ID,请阅读
finding-trace-logs.md,了解有界服务查询
和精确日志筛选器。包含所有严重级别,包括
info。即使没有保留跨度,跟踪记录 仍可能包含日志。
已知问题 ID 时,请使用 posthog:generate-app-url 生成 /error-tracking/{id}。
不要手动拼接 PostHog 链接。
报告结果
对于每条已检查的发生记录,显示错误时间、用于关联的 ID,以及可用时的问题、 回放和保留跟踪记录链接。汇总匹配日志,并注明其时间和严重级别。从日志摘录中 排除机密和不必要的个人数据。
分别说明每项缺失情况:事件没有跟踪 ID、存在跟踪 ID 但没有保留跨度、跨度没有 会话属性、没有录制内容,或检查的时间窗口内没有该跟踪 ID 对应的日志。通过会话 匹配的跨度只是候选项,只有精确的跟踪 ID 或跨度 ID 才能将其与错误关联起来。 说明任何导致搜索不完整的行数限制或时间范围。如果查询失败,请说明结果未知, 不要声称不存在匹配数据。