用途:当用户询问某次会话为何没有回放、或整体没有录制时,按流程系统排查原因。
主要能力:提供三个工具——posthog:session-recording-get 检查会话是否真的存在录制;posthog:execute-sql 查询事件中的诊断属性;posthog:query-session-recordings-list 按条件搜索录制。关键诊断信号包括 $has_recording、$recording_status(active、buffering、disabled、sampled、paused)、$session_recording_start_reason、$sdk_debug_recording_script_not_loaded、各类触发状态、$replay_sample_rate 等。
使用方式:先确认录制是否存在,若返回 found: false 且 reason 为 recording_not_found,则查询该会话最近事件获取诊断属性,再按优先级判定:录制存在、脚本被广告拦截、已禁用、触发未命中、被采样排除、缓冲为空、刷新被阻断、未知。若无具体会话 ID,可查询近一天 $pageview 事件按会话分组,观察项目级模式。最后按判定给出建议,如关闭广告拦截、检查回放设置、调整触发或采样率、降低最短时长,未知时参考 https://posthog.com/docs/session-replay/troubleshooting。
适用场景:单会话缺失排查与项目级录制缺失排查。
限制:若 $lib_version 过旧,部分诊断信号可能缺失;录制可能因保留期被删除;$has_recording 为 true 但找不到时,需检查时长、活跃度或播放列表过滤。相关技能包括 diagnosing-sdk-health、finding-sessions-to-watch、investigating-replay。