SuperAPI AI 工具集

export-debugger

数据与分析

查看项目

更新于 10-16 00:03

技能介绍

用途:诊断某个特定用户为什么被导出或没有被导出到外部平台。它会沿着完整导出链路追踪:细分群归属、任务状态、流程状态、静默窗口、导出日志,属于只读诊断。

环境要求:需要已认证的 API 访问,凭据解析方式见 ../references/auth.md。

输入:用户身份(字段加值,如 email user@example.com);导出目标(任务 ID、任务名称、平台名称或流程名称);表(默认 user)。

诊断流程:

  1. 识别导出任务。若给出任务 ID 则直接获取,否则列出任务查找:curl -s "${LYTICS_API_URL:-https://api.lytics.io}/v2/job" -H "Authorization: ${LYTICS_API_TOKEN}"。按名称、工作流类型或平台匹配,从任务 config 中取 segment_id。若提到流程,则获取流程并定位导出步骤:curl -s "${LYTICS_API_URL:-https://api.lytics.io}/v2/flow/ui/${FLOW_ID}" -H "Authorization: ${LYTICS_API_TOKEN}",查找 type_hint: "work_export" 的步骤并取其 work_id。
  2. 检查用户细分群归属:curl -s "${LYTICS_API_URL:-https://api.lytics.io}/api/entity/user/${FIELD}/${VALUE}?segments=true&allsegments=true" -H "Authorization: ${LYTICS_API_TOKEN}"。若在目标细分群中则继续,否则可能即为原因,可用 profile-investigator 技能解释为何不在。
  3. 检查任务状态:curl -s "${LYTICS_API_URL:-https://api.lytics.io}/v2/job/${JOB_ID}" -H "Authorization: ${LYTICS_API_TOKEN}"。状态含义:runnable 活跃;sleeping 运行间隙,看 sleep_until;paused 已暂停;fault 有错误;failed 终止性失败;killed 被手动停止。
  4. 检查静默窗口:从任务响应读取 quiet_time_of_day、quiet_timezone、quiet_period,三者均设置时按配置时区计算静默窗口;当前时间落在窗口内则任务休眠不导出。若 drop_events_during_quiet_window 为 true,期间事件被永久丢弃而非排队。
  5. 检查流程状态(若基于流程导出):实体响应中的 flows_step_slugs 与流程步骤列表交叉比对,判断用户是否已到达导出步骤、是否提前退出或处于不导向导出的条件分支。
  6. 检查任务日志,调试时始终加 include_errors=true:curl -s "${LYTICS_API_URL:-https://api.lytics.io}/v2/job/${JOB_ID}/logs?include_errors=true" -H "Authorization: ${LYTICS_API_TOKEN}"。关注导出计数 added、omitted、removed,错误(限流、认证失败、目标平台 API 错误),时间戳,以及部分平台报告的按用户失败(如无效邮箱格式)。

输出为导出调试报告,包含用户、目标、各步骤结果与诊断结论。常见诊断包括:不在细分群、任务暂停、任务故障、任务休眠、用户处于错误流程步骤、导出后平台同步延迟、日志中出现 Omitted 表示被导出配置过滤。

错误处理:任务未找到则列出任务供识别;用户未找到则尝试其他身份字段;同一平台多个导出任务则全部展示让用户选择;无日志可能任务较新或日志已过期。

依赖:组合 job-manager、entity-lookup、segment-manager、flow-manager 技能;相关 profile-investigator 技能;参考 ../references/auth.md、../references/api-client.md。