数据校验
完成初始化后发送一条测试事件,并在接收端核对事件名称、属性和身份。track() 返回或队列为空,不代表接收端已确认。
1. 准备测试环境
使用测试环境的 endpoint 和 projectKey,确认采集授权已满足要求。测试事件请使用非敏感数据。
Android 和 iOS 真机需使用设备可访问的地址。Web 可直接使用所属环境的 Track 网关地址;若使用网站同源代理,则使用网站提供的代理地址。
2. 发送并观察事件
按照平台接入指南调用 track(),等待 SDK 上传。需要立即尝试发送时,可调用 flush()。
- 检查 SDK 已初始化且事件未被拒绝;需要时查看诊断信息。
- 在浏览器开发者工具、设备代理或接收端日志中检查请求及响应。
- 在目标环境的接收记录或查询渠道核对事件内容。
3. 确认接收响应
Track 网关的成功响应示例:
json
{
"code": 200,
"data": { "status": "ACCEPTED" },
"message": "success"
}收到 HTTP 2xx 且响应包含 code: 200、data.status: "ACCEPTED" 时,SDK 确认整批接收。仅有 HTTP 2xx 不足以确认;其他支持的响应格式见事件接收协议。
有效 ACK 表示接收服务接受整批事件;如需确认事件已进入分析结果,还需查询目标环境的数据。
4. 选择验证环境
本地模拟服务可用于检查请求格式和重试,不能替代已部署环境的接收验证。正式接入前,请在测试环境核对项目配置、响应和接收记录。上线前可参照检查清单。
投递验证结果与排查顺序
如果所用 SDK 提供 verifyDelivery,可以在记录测试事件后调用它,检查调用时的待发送范围:
| 状态 | 含义与处理 |
|---|---|
acknowledged | 本次范围已收到有效 ACK;继续核对接收端数据。 |
empty | 没有待验证事件;确认事件是否已发送或未被接纳。 |
rejected | 存在被拒收的事件;检查项目配置和事件格式。 |
unconfirmed | 尚未完整确认;根据 reason 检查授权、网络、重试或存储状态。 |
该方法不跳过授权或重试等待。各平台调用方式见离线队列与重试。
提交排查信息
联系技术支持时,提供 SDK 和应用版本、平台、测试时间、问题现象、HTTP 状态和 SDK 错误码。分享诊断报告前,检查并移除凭据、用户身份及事件正文。