# 埋点系统产品需求文档 V2.15.0（功能说明版）

## 变更记录

| 版本号 | 作者 | 修订内容 | 发布日期 |
|---|---|---|---|
| V2.15.0 | 产品 | 依据现行原型重写后台“埋点系统”10个子页面功能说明 | 2026-07-21 |

## 1. 背景介绍

### 1.1 业务背景

前端业务页面需要补充用户行为埋点，后台提供经营分析、漏斗、留存、获客、活动、用户调查、风险处置、埋点配置、事件查询和数据质量监控能力。

## 2. 产品概述

### 2.1 产品目标

- 前端曝光、点击、输入、选择、停留由浏览器或 APP 客户端上报。
- 注册、登录、充值、提款、奖励等业务结果由服务器上报。
- 后台统一查询、分析和检查两类埋点数据。

### 2.2 受众

产品、运营、数据分析、研发、测试、风控和财务人员。

### 2.3 设计原则

- 前端行为不等于业务成功，结果类指标以后端成功事件为准。
- 所有页面使用站点国家时区；用户人数按页面注明的身份字段去重。
- 筛选条件改变后，点击“查询”才更新页面；“重置”恢复默认条件。

## 3. 需求说明

### 3.1 前台埋点

前台具体事件及字段清单沿用上一版事件字典。本版先明确后台10个子页面如何使用前端、后端埋点数据。

### 3.2 后台需求

#### 3.2.1 经营总览

**页面原型**

![经营总览页面](原型图/埋点系统V2.14.0/01_经营总览.png)

**筛选条件**

| 条件 | 用途 | 规则 |
|---|---|---|
| 统计周期 | 控制全部指标和趋势的统计时间 | 默认最近14天；支持今天、昨天、最近7/14/30天 |
| 归因类型 | 区分直推、裂变、自然流用户 | 默认全部来源 |
| 访问载体 | 区分 H5、PWA、Android、iOS、iOS书签 | 默认全部访问载体 |
| 渠道 | 查看指定 `app_code` 的数据 | 默认全部渠道 |
| 查询 | 按当前条件刷新页面 | 更新指标卡、趋势、转化、来源和风险待办 |
| 重置 | 恢复默认筛选条件 | 统计周期恢复最近14天，其余恢复全部 |

**功能模块**

| 模块 | 功能说明 | 数据/交互规则 |
|---|---|---|
| 核心指标卡 | 展示活跃会员、首充人数、充值金额、提款金额、平台GGR | 展示数值及较上一周期变化；点击充值、提款或GGR卡片切换趋势指标 |
| 埋点采集状态 | 分开展示前端埋点与后端埋点运行情况 | 展示打点端、事件数和接收成功率 |
| 用户主行为链路 | 展示广告入口到业务结果的完整阶段 | 点击“查看五类漏斗”进入转化漏斗页 |
| 核心指标趋势 | 按天展示充值、提款或GGR趋势 | 支持今天、最近7天、最近14天切换 |
| 今日投放转化 | 展示分流、落地、下载、主站各阶段人数和转化率 | 点击“查看详情”进入转化漏斗页 |
| 获客来源 | 展示直推、裂变、自然流占比及人数 | 点击“查看详情”进入获客分析页 |
| 风险待办 | 展示待处理、今日新增和自动出款拦截案件 | 点击“进入风险中心/立即处理”进入风险中心 |

**开发级功能明细（第一版）**

| 编号 | 功能点 | 开发说明 | 处理规则 | 状态/异常 |
|---|---|---|---|---|
| O-01 | 页面初始化 | 进入页面后根据当前站点加载默认最近14天数据；站点是数据隔离条件，必须随每个请求传递。 | 首屏可并行请求指标、趋势、投放、来源和风险摘要；任一模块失败不得阻塞其他模块。 | 加载中显示骨架；单模块失败显示“加载失败，重新加载”；全页无权限显示403页。 |
| O-02 | 统计周期 | 生成明确的站点时间起止值，供所有经营指标统一使用，不能由各模块自行计算日期。 | “今天/昨天”按站点自然日；最近N天包含当天；对比周期取等长上一周期。 | 日期配置不存在时禁止查询并提示“站点时区未配置”。 |
| O-03 | 归因类型 | 控制只统计直推、裂变或自然流用户；用于回答用户从哪类来源进入。 | 直推、裂变可同时命中时同一用户在分来源图中分别计入，但总人数按用户去重，页面需提示可能非简单相加。 | 无归因字段的记录归入“未识别”，不得自动算自然流。 |
| O-04 | 查询与重置 | 查询把页面控件值提交为正式条件；重置只恢复控件默认值，并立即按默认值重新查询。 | 查询期间按钮禁用，避免重复请求；新查询返回前保留旧数据并显示加载态。 | 请求超时保留旧数据并提示失败；不得把失败结果覆盖为0。 |
| O-05 | 核心指标卡 | 每张卡必须返回指标值、单位、对比值、对比方向和口径说明。 | 活跃会员按用户去重；首充取生命周期首次成功充值；资金指标以后端成功结果为准；GGR=有效投注-派彩-Jackpot。 | 分母或上一周期为0时变化率显示“—”；金额统一使用站点币种。 |
| O-06 | 指标卡切换趋势 | 点击充值金额、提款金额或平台GGR卡片时，只切换趋势图指标，不重新请求其他模块。 | 选中卡片增加选中态；趋势接口可复用已缓存数据，缺少时按当前全局条件请求。 | 不支持趋势的卡片不可点击，鼠标样式不得表现为可操作。 |
| O-07 | 趋势周期 | “今天/最近7天/最近14天”控制图表粒度和点数，与上方统计周期互不改写。 | 今天按小时或单日汇总；7/14天按站点自然日补齐日期，缺失日期补0但需区分无数据与接口失败。 | 图表无数据显示空状态，不显示一条值为0的误导曲线。 |
| O-08 | 今日投放转化 | 展示站内首个分流事件到主站首页的连续阶段，帮助判断投放链路在哪一步流失。 | 每阶段人数按统一身份键去重；阶段率=本阶段人数/上阶段人数；第一阶段固定100%。 | 上阶段为0时转化率显示“—”；点击详情携带当前全局条件进入漏斗页。 |
| O-09 | 获客来源 | 环形图展示来源占比，旁边人数与图例一一对应。 | 占比分母使用当前筛选下全部已识别获客用户；百分比保留1位，小数修正后合计100%。 | 无来源数据时显示空图和0人，不保留上次结果。 |
| O-10 | 风险待办 | 只展示当前用户有权限站点内的待处理风险摘要和最高优先级案件。 | 高风险优先，其次按创建时间升序；“立即处理”携带案件ID打开风险中心。 | 案件已被他人处理时进入风险页后刷新状态并提示，不允许按旧状态操作。 |

**弹窗说明**：当前经营总览原型无独立弹窗，卡片和快捷入口均在当前页切换或跳转。

#### 3.2.2 转化漏斗

**页面原型**

![转化漏斗页面](原型图/埋点系统V2.14.0/02_转化漏斗.png)

**弹窗原型**

![转化漏斗步骤详情](原型图/埋点系统V2.15.0_弹窗/02_转化漏斗_步骤详情.jpg)

**筛选条件**

| 条件 | 用途 | 规则 |
|---|---|---|
| 全局筛选 | 按周期、归因、访问载体和渠道筛选漏斗 | 与经营总览筛选规则一致 |
| 漏斗类型 | 切换投放下载、注册、登录、充值、提款、代理、活动奖励漏斗 | 切换后刷新步骤、人数、转化率和结论 |

**功能模块**

| 模块 | 功能说明 | 数据/交互规则 |
|---|---|---|
| 漏斗步骤 | 按顺序展示各事件人数和相邻步骤转化率 | 前端步骤统计行为事件；成功步骤仅统计后端 `result_status=success` |
| 流失人数 | 展示当前步骤相对上一步减少的人数 | 第一步不计算流失 |
| 关键结论 | 自动指出当前漏斗主要流失阶段 | 结论随漏斗类型变化 |
| 步骤详情抽屉 | 查看事件名、打点端、人数、转化率和流失人数 | 点击任一步骤打开 |
| 下钻维度 | 定位具体流失来源 | 支持访问载体、渠道、活动渠道、PID、页面类型、失败原因 |
| 导出流失明细 | 导出当前筛选条件下的流失用户 | 使用当前漏斗类型、步骤和全局筛选条件 |

**开发级功能明细（第一版）**

| 编号 | 功能点 | 开发说明 | 处理规则 | 状态/异常 |
|---|---|---|---|---|
| F-01 | 漏斗类型切换 | 每个类型对应固定且有序的事件步骤配置；切换类型实际是切换一套漏斗定义。 | 定义由事件名、成功条件、步骤顺序和显示名组成；前端不得根据中文名称拼事件。 | 某一步未配置时整条漏斗标记“配置不完整”，不得跳过后继续算转化。 |
| F-02 | 步骤人数 | 统计在查询窗口内到达该步骤的唯一用户数，用于衡量到达量。 | 已登录优先用`user_id`；未登录用`fingerprint_id`；同一用户重复触发只计1人。 | 身份字段均缺失的事件不计人数，并进入质量异常。 |
| F-03 | 前端步骤 | 页面进入、点击、输入和选择只代表用户行为已发生。 | 以客户端事件接收成功为准，不把按钮点击解释为注册、充值等业务完成。 | 客户端事件延迟到达时按`event_time`归属原日期。 |
| F-04 | 后端结果步骤 | 注册、登录、充值、提款、领奖等完成步骤必须由服务器结果事件提供。 | 仅`result_status=success`进入成功步骤；failed进入失败原因下钻，不计成功人数。 | 同一业务单重复结果按`business_id+result_status`去重。 |
| F-05 | 相邻转化率 | 说明用户从上一步到本步的转化比例。 | 本步人数/上一步人数×100%，保留1位；不计算跨步转化作为页面主值。 | 上一步为0显示“—”；本步大于上步时标记“顺序异常”供数据排查。 |
| F-06 | 流失人数 | 表示到达上一步但未在规定窗口内到达本步的用户。 | 流失=上一步用户集合减本步用户集合；不能只用两个聚合人数相减生成可导出的用户明细。 | 第一步无流失；漏斗窗口未结束时标记“数据持续更新”。 |
| F-07 | 步骤点击 | 点击步骤打开详情抽屉，并把当前漏斗、步骤、时间和全局条件作为上下文。 | 抽屉打开不改变页面筛选；关闭后保留原滚动位置和漏斗类型。 | 详情请求失败只在抽屉内提示，不关闭主页面。 |
| F-08 | 下钻维度 | 对当前步骤到达用户、流失用户或失败事件按指定字段聚合。 | 失败原因只对后端failed事件生效；PID、页面类型缺失统一显示“未上报”。 | 高基数字段默认只返回Top 50，其余合并为“其他”。 |
| F-09 | 关键结论 | 根据最大流失人数、最低转化率和后端失败率生成可解释结论。 | 结论必须带具体步骤和数值；不允许只展示固定文案。 | 样本量低于配置阈值时显示“样本不足”，不输出优化结论。 |
| F-10 | 导出流失明细 | 异步生成当前步骤的流失用户集合，供运营进一步分析。 | 导出任务保存全部筛选快照、漏斗版本和步骤编号；敏感字段按权限脱敏。 | 无导出权限隐藏按钮；超过行数上限时拆分文件并通知用户。 |

#### 3.2.3 留存分析

**页面原型**

![留存分析页面上半部分](原型图/埋点系统V2.15.0_完整截图/03_留存分析_上半页.jpg)

![留存分析页面下半部分](原型图/埋点系统V2.15.0_完整截图/03_留存分析_下半页.jpg)

**筛选条件**

| 条件 | 用途 | 规则 |
|---|---|---|
| 全局筛选 | 按周期、归因、访问载体和渠道筛选 | 时间按站点国家自然日 |
| 商业留存类型 | 切换注册后充值、首充后复充、首投后复投 | 切换起始事件、留存事件、指标卡和同批表 |

**功能模块**

| 模块 | 功能说明 | 数据/交互规则 |
|---|---|---|
| 用户活跃留存总览 | 展示注册用户D1/D3/D7/D30再次进入主站的比例 | 起点为注册成功；活跃为登录状态进入主站；按 `user_id` 去重 |
| 商业质量留存 | 衡量注册、首充或首投用户后续充值/投注质量 | 支持三种商业留存类型切换 |
| 留存指标卡 | 展示D1/D3/D7/D30留存及环比 | 未到观察日不参与计算 |
| 同批用户表 | 按T0日期展示同批人数和各观察日留存率 | 未到观察日显示“—”，不显示0% |
| 口径说明 | 展示起始事件、留存事件和计算定义 | 充值成功以后端最终入账为准 |
| 分组字段 | 用于比较不同用户群留存 | 支持归因类型、访问载体、渠道、活动渠道、VIP等级、用户分组 |

**开发级功能明细（第一版）**

| 编号 | 功能点 | 开发说明 | 处理规则 | 状态/异常 |
|---|---|---|---|---|
| R-01 | 活跃留存起点 | 建立每天注册成功的同批用户集合，后续所有Dn活跃率都使用该集合做分母。 | 起点事件为后端`register_result`且success；按`user_id`去重并固定T0站点日期。 | 补到事件更新原T0批次，但需记录最后更新时间。 |
| R-02 | 活跃判定 | 判断T0用户是否在T0+n当天重新进入登录状态主站。 | 使用登录状态下的`home_page_view`；同一用户当天多次进入只计1次。 | 匿名首页访问不计活跃留存。 |
| R-03 | 商业留存类型 | 切换不同的起始人群和后续商业行为，用于比较用户质量。 | 注册后充值：注册→充值；首充后复充：生命周期首充→后续充值；首投后复投：生命周期首投→后续有效投注。 | 起始事件和留存事件配置必须成对返回，缺一不可。 |
| R-04 | Dn定义 | D1/D3/D7/D30是指定自然日留存，不是“截至第n天累计发生”。 | 只判断T0+n当日是否发生留存行为；站点时区变更不回写历史T0日期。 | 观察日尚未结束可显示实时值并标记“更新中”。 |
| R-05 | 指标卡 | 汇总当前筛选范围内各批次的加权留存率及相对上一周期变化。 | 加权率=各批次留存人数合计/各批次起始人数合计；不得对各批次百分比直接平均。 | 无完整观察窗口时对应卡片显示“—”。 |
| R-06 | 同批用户矩阵 | 每行是一个T0批次，每列是固定观察日，便于查看不同日期用户质量。 | 单元格=该批次Dn留存人数/T0人数；颜色深浅按比例映射，数值文本始终显示。 | 未到观察日显示“—”；到期但无人留存显示0.0%。 |
| R-07 | 分组字段 | 把同批用户按T0时刻的属性拆分，避免后续属性变化污染历史分析。 | 渠道、VIP、用户分组等取起始行为发生时快照；一个批次可选一个主分组。 | 分组值缺失显示“未知”，不得丢弃该用户。 |
| R-08 | 全局时间筛选 | 控制T0批次日期范围，不是控制后续留存事件发生范围。 | 查询最近14天时选择最近14个T0批次，同时读取其后续观察日数据。 | 若选择范围不足以形成D30，D30显示可用完整批次结果或“—”。 |
| R-09 | 口径说明 | 把当前起点事件、留存事件、去重字段、时区和计算方式直接展示给使用者。 | 文案随留存类型切换，必须与接口返回的口径版本一致。 | 口径版本变更需在页面显示生效日期。 |

**弹窗说明**：当前留存分析原型无独立弹窗，所有定义与明细均在页面内展示。

#### 3.2.4 获客分析

**页面原型**

![获客分析页面](原型图/埋点系统V2.14.0/04_获客分析.png)

**筛选条件**

| 条件 | 用途 | 规则 |
|---|---|---|
| 全局筛选 | 按周期、归因、访问载体和渠道筛选获客数据 | 默认最近14天、全部来源、全部访问载体、全部渠道 |

**功能模块**

| 模块 | 功能说明 | 数据/交互规则 |
|---|---|---|
| 链路指标卡 | 汇总页面分流、落地页、下载页、主站、注册、支付、首充各阶段人数 | 指标随筛选条件刷新 |
| 投放至主站表现表 | 按渠道展示全链路人数和阶段转化率 | 下载按钮与弹窗下载按钮为并列触点，不相加作为唯一用户数 |
| 归因类型 | 标记直推、裂变和自然流 | 直推来自广告来源证据；裂变来自邀请码；均无则为自然流 |
| 访问载体 | 区分 H5、PWA、Android、iOS、iOS书签 | 使用 `channel_type` |
| 可下钻字段 | 定位具体投放来源 | `channel_type`、`app_code`、`promotion_channel_code`、`pid`、`page_type` |
| 导出报表 | 导出当前筛选结果 | 导出表格的全部字段和当前条件 |

**开发级功能明细（第一版）**

| 编号 | 功能点 | 开发说明 | 处理规则 | 状态/异常 |
|---|---|---|---|---|
| A-01 | 链路指标卡 | 每张卡对应一个站内获客事件阶段，用于快速比较各阶段到达人数。 | 全部阶段使用相同身份去重规则和查询窗口；后端成功阶段只统计success。 | 指标未接入时显示“未接入”，不能用0代替。 |
| A-02 | 渠道行 | 每行代表一个`app_code`在一种归因类型和访问载体下的链路结果。 | 同一渠道存在多种`channel_type`时拆行；后台显示名称与代码同时可追溯。 | 渠道已下架仍保留历史行并标记“已下架”。 |
| A-03 | 阶段人数 | 展示页面分流、落地、下载、主站、注册、支付和首充的去重人数。 | 站外广告点击未接入时，首阶段从站内分流成功开始，不得写成广告点击人数。 | 迟到后端结果允许在24小时内回补原日期。 |
| A-04 | 并列下载触点 | 普通下载按钮和弹窗下载按钮是两个可能重叠的触点。 | 分别统计人数；用户同时点击两类按钮时各自计1，但后续总下载用户集合只计1。 | 页面必须避免把两数直接相加描述为下载总人数。 |
| A-05 | 阶段转化率 | 显示关键阶段之间的业务转化效率。 | 例如落地至下载=进入下载页/进入落地页；全链路首充=首充成功/页面分流成功。 | 分母0显示“—”；分子大于分母标记数据异常。 |
| A-06 | 归因判定 | 把广告证据、邀请关系和无来源用户映射为直推、裂变、自然流。 | 同时具备广告和邀请证据时保留双归因；明细需返回证据字段和归因版本。 | 来源字段缺失但不能确认自然流时归为“未识别”。 |
| A-07 | 横向宽表 | 表格列多于视口时，仅表格容器横向滚动，页面整体不能横向移动。 | 渠道、归因、访问载体列固定在左侧；关键转化率与最终首充列可固定在右侧。 | 移动端可只读查看并保留横向滚动提示。 |
| A-08 | 导出报表 | 导出当前筛选下所有渠道行及全部链路字段，不受页面可视列限制。 | 导出文件包含口径版本、站点时区、筛选条件和生成时间。 | 数据量大时异步生成；重复点击复用未完成任务。 |

**弹窗说明**：当前获客分析原型无独立弹窗。

#### 3.2.5 活动分析

**页面原型**

![活动分析页面](原型图/埋点系统V2.14.0/05_活动分析.png)

**弹窗原型**

![活动分析用户明细](原型图/埋点系统V2.15.0_弹窗/05_活动分析_用户明细.jpg)

**筛选条件**

| 条件 | 用途 | 规则 |
|---|---|---|
| 全局筛选 | 按周期、归因、访问载体和渠道筛选活动用户 | 与其他分析页一致 |
| 活动列表 | 选择充值返利、投注返利、救援金、斗鸡连胜、票券活动、月卡 | 切换后刷新该活动全部指标 |
| 票券类型 | 在票券活动内切换每日转盘、砸金蛋、下载宝箱、充值转盘 | 仅选择票券活动时出现 |

**功能模块**

| 模块 | 功能说明 | 数据/交互规则 |
|---|---|---|
| 活动指标卡 | 展示参与人数、达标金额、奖励金额及活动专属指标 | 不同活动展示不同指标，不强制共用无意义字段 |
| 用户行为转化 | 展示曝光、进入、参与、达标、领奖、奖励成功的逐步转化 | 投注返利、救援金不展示“参与动作”；月卡拆分每日必得和额外奖励 |
| 行为趋势 | 展示近7日参与、达标和奖励成功人数 | 无参与步骤的活动只展示达标和奖励成功 |
| 用户行为分层 | 展示曝光未进入、进入未参与、参与未达标、达标未领奖、领奖未成功、奖励成功用户 | 各分层按上一阶段人数计算占比 |
| 查看用户 | 打开当前分层用户明细 | 展示UID、渠道和脱敏手机号 |
| 导出用户明细 | 导出当前活动的用户行为明细 | 使用当前活动、票券类型和全局筛选条件 |

**开发级功能明细（第一版）**

| 编号 | 功能点 | 开发说明 | 处理规则 | 状态/异常 |
|---|---|---|---|---|
| C-01 | 活动选择 | 左侧活动列表是分析对象选择器，每次只能选一个活动类型。 | 切换后清空上一个活动的票券子类型、步骤选中和用户抽屉状态，再请求新数据。 | 活动无权限时不展示；已结束活动仍可查看历史。 |
| C-02 | 活动专属指标 | 不同活动返回不同经营指标，避免用同一组指标错误解释业务。 | 接口返回指标编码、名称、数值、单位和口径；前端按配置渲染但不执行金额公式。 | 未支持的指标编码显示兼容占位并记录前端告警。 |
| C-03 | 票券子类型 | 票券活动下按每日转盘、砸金蛋、下载宝箱、充值转盘继续细分。 | 子类型是查询条件；切换后同步刷新指标、行为步骤、趋势和分层。 | 非票券活动隐藏该控件，并清除已选票券值。 |
| C-04 | 行为步骤 | 描述用户从活动曝光到奖励成功的业务过程。 | 每步绑定明确事件与成功条件；活动达标、奖励成功必须以后端事实为准。 | 某活动不存在“参与”步骤时从流程定义中移除，不显示0人虚拟步骤。 |
| C-05 | 月卡双奖励路径 | 月卡在达标后分别进入每日必得和每日额外奖励两条领取路径。 | 两条路径各自计算发起领取、成功人数和转化率，不串联为一条漏斗。 | 用户同日重复领取按月卡实例+日期+奖励槽位幂等。 |
| C-06 | 行为趋势 | 展示最近7个站点自然日的参与、达标和奖励成功人数。 | 每个序列使用相同用户去重口径；无参与步骤的活动不返回参与序列。 | 日期无数据补0；接口失败不补0。 |
| C-07 | 用户分层 | 每个分层代表停留在某一阶段的用户集合，供运营定位问题。 | 通过集合差计算，例如达标未领奖=达标集合-领奖集合；奖励成功为最终成功集合。 | 分层集合必须互斥；相加应等于基准阶段人数或给出差异说明。 |
| C-08 | 查看用户 | 打开所选分层的用户明细，不改变主页面活动选择。 | 明细返回UID、渠道、脱敏手机号；支持按稳定排序继续分页或导出。 | 无敏感字段权限时手机号列全部脱敏且不提供查看完整值。 |
| C-09 | 导出用户 | 导出当前分层完整用户集合及判定证据。 | 导出包含活动版本、分层规则、筛选快照和用户最后阶段时间。 | 空分层禁用导出；任务失败可重新生成。 |

#### 3.2.6 用户360

**页面原型**

![用户360活动记录](原型图/埋点系统V2.14.0/06_用户360_活动记录.png)

![用户360资金记录](原型图/埋点系统V2.14.0/06b_用户360_资金记录.png)

**筛选条件**

| 条件 | 用途 | 规则 |
|---|---|---|
| 用户查询 | 查询单个会员 | 支持用户名、手机号、会员ID；系统无昵称字段 |
| 记录标签 | 切换行为轨迹、资金记录、活动记录、登录设备、风险记录 | 切换后每次先加载10条 |

**功能模块**

| 模块 | 功能说明 | 数据/交互规则 |
|---|---|---|
| 用户头部 | 展示用户名、状态、VIP、会员ID、注册时间和归因来源 | 查询成功后更新 |
| 行为轨迹 | 按站点时间倒序串联前端行为和后端业务结果 | 默认10条，上拉或点击继续加载 |
| 资金记录 | 展示充值、提款、投注、派彩、奖励、佣金等金额变化 | 展示订单号、结果和失败原因 |
| 活动记录 | 展示活动动作、奖励金额、结果和原因 | 失败记录必须保留原因 |
| 登录设备 | 展示访问载体、设备/浏览器、IP和设备状态 | IP默认脱敏 |
| 风险记录 | 展示案件编号、风险类型、等级和状态 | 可关联风险中心案件 |
| 会员信息 | 展示手机号、注册IP、余额、充提总额、净输赢、稽核和风险标签 | 手机号与IP按权限查看完整值 |
| 导出详细数据 | 导出当前标签全部记录和完整字段 | 不仅导出当前已加载10条 |

**开发级功能明细（第一版）**

| 编号 | 功能点 | 开发说明 | 处理规则 | 状态/异常 |
|---|---|---|---|---|
| U-01 | 用户搜索输入 | 用一个输入框接收用户名、手机号或会员ID，提交后由服务端识别查询类型。 | 去除首尾空格；手机号按完整号码查询；会员ID精确匹配；用户名按精确匹配优先。 | 空输入不查询；多用户命中时返回选择列表，禁止默认打开第一人。 |
| U-02 | 用户查询结果 | 查询成功后一次返回用户基础身份，其他标签数据按需加载。 | 新查询用户时清空上一用户的全部记录、加载页码和敏感字段明文状态。 | 未找到显示空状态；用户被删除/合并时展示历史状态和目标用户链接。 |
| U-03 | 用户头部 | 固定展示当前调查对象，避免切换标签后失去上下文。 | 用户名、UID、状态、VIP、注册时间和归因来源来自用户快照；归因显示名称和代码。 | 字段缺失显示“—”，不得保留上一用户数据。 |
| U-04 | 行为轨迹 | 把前端行为和后端结果按站点时间合并成一条可读时间线。 | 默认倒序；相同`trace_id`事件可连续展示；每次加载10条，使用游标避免重复。 | 迟到事件插入正确时间位置；加载失败保留已加载记录。 |
| U-05 | 资金记录 | 展示影响用户资产或资金订单的记录，便于核对充值、提款、投注、派彩、奖励和佣金。 | 金额带正负方向和币种；成功、失败、处理中分开；订单号可作为后续详情入口。 | 失败必须显示原因；无订单号的人工账变显示账变ID。 |
| U-06 | 活动记录 | 展示用户参与活动、领取奖励及失败原因的历史。 | 每条记录绑定活动ID/版本、动作、奖励金额、结果和业务时间。 | 奖励冲正以负数记录，不覆盖原奖励成功记录。 |
| U-07 | 登录设备 | 展示访问载体、设备、浏览器、IP及当前/历史状态。 | 当前设备依据最近有效会话；同一设备多次登录聚合展示最近时间。 | IP默认脱敏；设备ID缺失时不能错误合并。 |
| U-08 | 风险记录 | 展示该用户关联的风险案件，作为调查入口。 | 按案件创建时间倒序；点击案件编号进入风险中心并携带案件ID。 | 已关闭案件保留；无权限查看案件时只显示数量。 |
| U-09 | 标签切换 | 切换行为、资金、活动、设备、风险数据域。 | 首次打开才请求；再次切换可使用缓存，但用户或全局站点变化时清空缓存。 | 标签请求失败只影响当前标签。 |
| U-10 | 查看敏感字段 | “查看”临时显示完整手机号或IP，用于授权人员核查。 | 点击前校验字段权限；成功查看写入敏感字段审计，记录用户、字段、操作者和时间。 | 无权限不显示按钮；会话超时后自动恢复脱敏。 |
| U-11 | 加载更多 | 当前标签每次追加10条，而不是重新替换已有列表。 | 使用服务端游标；返回不足10条表示结束；防止滚动和按钮同时触发重复请求。 | 到底显示“已加载全部”；无数据显示专用空状态。 |
| U-12 | 导出详细数据 | 导出当前用户、当前标签和当前查询范围内的全部记录。 | 不受前端已加载条数限制；附带站点时区、导出人和脱敏规则。 | 资金、设备等敏感域需独立导出权限并写审计。 |

**弹窗说明**：当前用户360原型无独立弹窗；手机号和IP通过当前页“查看/隐藏”切换。

#### 3.2.7 风险中心

**页面原型**

![风险中心页面](原型图/埋点系统V2.14.0/07_风险中心.png)

**弹窗原型**

![风险案件详情](原型图/埋点系统V2.15.0_弹窗/07_风险中心_案件详情.jpg)

**筛选条件**

| 条件 | 用途 | 规则 |
|---|---|---|
| 风险等级 | 筛选全部、高风险或中风险案件 | 默认全部风险等级 |

**功能模块**

| 模块 | 功能说明 | 数据/交互规则 |
|---|---|---|
| 案件指标卡 | 汇总待处理、处理中、自动出款拦截、今日已关闭数量 | 点击页面刷新后同步最新状态 |
| 风险案件表 | 展示案件编号、用户、风险类型、金额、规则数、等级和状态 | 高风险订单必须关闭自动出款并转人工处理 |
| 案件详情抽屉 | 展示风险分、订单、命中规则和当前状态 | 点击“查看案件”打开 |
| 处理备注 | 记录核查结果和处理原因 | 执行处理前填写；进入审计记录 |
| 标记处理中 | 将案件状态更新为处理中 | 保留操作人和时间 |
| 审核通过 | 通过当前案件 | 记录处理结果并关闭抽屉 |
| 关闭案件 | 关闭无需继续处理的案件 | 记录关闭原因和操作人 |
| 导出 | 导出当前筛选案件 | 敏感字段按权限脱敏 |

**开发级功能明细（第一版）**

| 编号 | 功能点 | 开发说明 | 处理规则 | 状态/异常 |
|---|---|---|---|---|
| K-01 | 案件统计卡 | 汇总当前站点各处理状态的案件数量，帮助安排处理优先级。 | 卡片时间口径分别标明存量或今日；自动出款拦截只统计仍在拦截中的案件。 | 卡片与列表查询时间不一致时展示各自更新时间。 |
| K-02 | 风险等级筛选 | 限定列表只返回指定等级案件。 | 等级为规则计算后的案件当前等级，不使用单条规则等级代替。 | 无结果显示空列表，不恢复到全部等级。 |
| K-03 | 案件列表 | 每行代表一个独立风险案件，不是单条规则命中。 | 一个案件可聚合多个规则和业务对象；金额统一按订单币种显示。 | 案件状态更新后只刷新该行和统计卡。 |
| K-04 | 查看案件 | 打开案件详情并获取最新版本，防止基于旧列表状态处理。 | 请求返回`case_version`；后续状态操作必须携带版本做并发校验。 | 案件已被其他人更新时提示并刷新详情。 |
| K-05 | 风险分与等级 | 风险分用于解释风险程度，等级决定页面颜色和处理优先级。 | 分数及等级由风险服务返回；前端不重新计算。 | 规则重算导致分数变化时展示更新时间。 |
| K-06 | 命中规则 | 展示规则名称、证据和命中时间，帮助人工判断风险原因。 | 规则按风险贡献或时间排序；证据ID可追溯原事件/订单。 | 规则已停用不影响历史命中展示。 |
| K-07 | 处理备注 | 保存人工核查说明，成为案件审计的一部分。 | 审核通过、关闭案件时备注必填；长度和敏感字符按后台统一规则校验。 | 校验失败保留输入内容；不得静默清空。 |
| K-08 | 标记处理中 | 表示当前人员已接手案件，但不代表风险结论。 | 状态从待处理→处理中；记录处理人、时间和版本。 | 已被他人接手时禁止覆盖并提示处理人。 |
| K-09 | 审核通过 | 表示本次业务可继续或风险不成立，具体业务动作由服务端执行。 | 提交备注、案件版本和处理结论；服务端完成业务解锁后才返回成功。 | 业务解锁失败时案件不得先显示已通过。 |
| K-10 | 关闭案件 | 结束无需继续处理的案件，保留历史证据。 | 关闭原因必填；关闭后禁止普通用户继续修改，管理员可重新打开并审计。 | 有未完成拦截动作时服务端拒绝关闭。 |
| K-11 | 导出案件 | 导出当前筛选案件及规则摘要，供审计使用。 | 金额、手机号、支付账户等字段按权限脱敏；导出动作写审计。 | 无权限隐藏入口；数据量大异步生成。 |

#### 3.2.8 埋点管理

**页面原型**

![埋点管理页面上半部分](原型图/埋点系统V2.15.0_完整截图/08_埋点管理_上半页.jpg)

![埋点管理页面下半部分](原型图/埋点系统V2.15.0_完整截图/08_埋点管理_下半页.jpg)

**弹窗原型**

![新增埋点定义](原型图/埋点系统V2.15.0_弹窗/08_埋点管理_新增埋点.jpg)

**筛选条件**

| 条件 | 用途 | 规则 |
|---|---|---|
| 埋点类型 | 筛选前端埋点或后端埋点 | 默认全部埋点类型 |
| 内部事件名称 | 按英文事件名模糊查询 | 支持输入部分名称 |
| 事件中文名称 | 按中文名称模糊查询 | 支持输入部分名称 |
| 业务模块 | 查询指定业务模块事件 | 默认全部业务模块 |
| 状态 | 查询已启用或已停用事件 | 默认全部状态 |
| 重置 | 清空全部筛选 | 分页回到第1页 |

**功能模块**

| 模块 | 功能说明 | 数据/交互规则 |
|---|---|---|
| 埋点类型定义 | 说明前端、后端埋点的触发来源、打点端和上报方式 | 前端由客户端SDK上报；后端由业务服务器上报 |
| 埋点定义表 | 展示内部名、中文名、类型、打点端、触发来源、业务模块和状态 | 每页10条 |
| 状态开关 | 启用或停用某个埋点定义 | 操作需记录审计；停用不删除历史事件 |
| 查看详情 | 查看触发条件、上报时机、必填属性、去重规则、指标用途 | 点击后打开详情抽屉 |
| 新增埋点 | 新建前端或后端埋点定义 | 类型与打点端联动；填写触发条件、时机、属性、去重和成功判定 |
| 保存 | 保存新增定义 | 内部事件名必须小写英文下划线且唯一 |

**开发级功能明细（第一版）**

| 编号 | 功能点 | 开发说明 | 处理规则 | 状态/异常 |
|---|---|---|---|---|
| M-01 | 类型说明区 | 明确前端埋点和后端埋点的边界，防止开发用点击事件代替业务结果。 | 说明内容与事件协议版本一致；前端=客户端行为，后端=业务服务器事实。 | 协议升级时展示当前版本和变更入口。 |
| M-02 | 埋点类型筛选 | 按前端或后端定义过滤列表。 | 选择类型后清零页码并查询；类型同时决定打点端和允许的触发来源枚举。 | 后端返回未知类型时标记“未知”，不能归入前端。 |
| M-03 | 内部事件名搜索 | 用稳定英文事件名定位埋点定义。 | 去空格后转小写做包含匹配；数据库字段应有适合前缀/包含查询的索引策略。 | 输入非法字符可查询但新增时禁止。 |
| M-04 | 中文名称搜索 | 便于产品和测试按业务语义查找事件。 | 包含匹配；中文名不是唯一键，不得用于上报或关联。 | 多条同名事件正常展示并通过内部名区分。 |
| M-05 | 业务模块筛选 | 查看某业务域的全部埋点。 | 模块来自统一枚举或配置，不允许前端硬编码自由文本。 | 已停用模块保留在历史筛选中。 |
| M-06 | 状态筛选 | 区分允许继续上报的定义和已停用定义。 | 状态只影响后续接收/告警策略，不删除定义和历史事件。 | 状态变更与列表筛选冲突时该行可从当前列表移除。 |
| M-07 | 定义列表 | 以事件定义为粒度展示名称、类型、打点端、触发、方式、模块和状态。 | 默认稳定排序；每页10条；接口返回总数、页码和定义版本。 | 空结果显示筛选空状态；接口失败不显示“共0条”。 |
| M-08 | 状态开关 | 快速启停单个事件定义。 | 点击后先二次确认影响；提交定义ID和版本；成功后更新状态并写操作审计。 | 核心P0事件禁止直接停用，需发布流程；并发冲突时刷新。 |
| M-09 | 查看详情 | 展示开发实现所需的完整定义，而非只展示名称。 | 包含触发条件、上报时机、必填属性、类型、格式、枚举、去重规则、指标用途和成功判定。 | 定义版本已更新时提示重新打开最新版本。 |
| M-10 | 新增基础字段 | 创建事件稳定身份和业务归属。 | 内部名满足`^[a-z][a-z0-9_]*$`且全局唯一；中文名必填；模块必选。 | 重名返回明确冲突事件；保存失败保留表单。 |
| M-11 | 类型与打点端联动 | 防止前端埋点误选服务端、后端埋点误选客户端。 | 选前端时打点端固定浏览器/APP客户端；选后端时固定服务端；切换类型重置不兼容触发来源。 | 用户已填写不兼容内容时切换需确认。 |
| M-12 | 触发与上报定义 | 告诉研发在什么动作、什么时刻上报。 | 前端区分页面进入、点击、输入、选择、停留；后端区分接口完成、状态变化、回调、定时任务。 | 描述为空不得发布，可允许保存草稿。 |
| M-13 | 属性定义 | 规定事件必须携带哪些业务字段以及字段类型。 | 每个属性包含编码、类型、必填、枚举、示例和脱敏级别；公共字段不重复配置。 | 删除已发布必填属性必须新建事件版本。 |
| M-14 | 保存/发布 | 保存仅创建草稿；发布后才成为可接收和监控的正式定义。 | 首版原型只有保存按钮时，服务端至少返回草稿状态；正式上线需后续补发布动作和版本号。 | Schema校验失败逐字段提示；重复提交使用幂等键。 |
| M-15 | 分页 | 在120条定义中稳定切页。 | 切页保留筛选条件；总页数根据返回总数计算；当前页无数据且非第1页时回退上一页。 | 请求页超过总页数时服务端返回最后有效页或明确错误。 |

#### 3.2.9 事件查询

**页面原型**

![事件查询页面](原型图/埋点系统V2.14.0/09_事件查询.png)

**弹窗原型**

![事件详情](原型图/埋点系统V2.15.0_弹窗/09_事件查询_事件详情.jpg)

**筛选条件**

| 条件 | 用途 | 规则 |
|---|---|---|
| 事件时间 | 限定查询日期范围 | 按站点时间查询 |
| 埋点类型 | 筛选前端或后端事件 | 默认全部 |
| 内部事件名称 | 按英文事件名模糊查询 | 支持部分匹配 |
| 事件中文名称 | 按中文名称模糊查询 | 支持部分匹配 |
| 用户名 | 按用户名查询 | 支持包含匹配 |
| UID | 定位已注册用户 | 必须完整输入，精确匹配 |
| 指纹ID | 定位未注册或跨登录前后的用户 | 必须完整输入，精确匹配 |
| 渠道 | 按 `app_code` 查询 | 默认全部渠道 |
| 状态 | 筛选正常或异常事件 | 异常包括字段缺失等质量问题 |
| 查询/重置 | 执行查询或恢复默认条件 | 修改条件后需点击查询；重置立即清空 |

**功能模块**

| 模块 | 功能说明 | 数据/交互规则 |
|---|---|---|
| 类型图例 | 解释前端埋点和后端埋点的打点端及用途 | 固定展示在筛选区上方 |
| 事件明细 | 倒序展示站点时间、类型、事件名、身份、渠道、来源、状态和延迟 | 最多展示最近20条，不分页 |
| 身份复制 | 快速复制用户名、UID或指纹ID | 空值显示“—”，不提供复制 |
| 查看详情 | 打开单条事件详情 | 展示打点信息、基础信息及客户端/业务属性JSON |
| 导出结果 | 导出当前筛选命中的事件 | 导出范围与页面查询条件一致 |

**开发级功能明细（第一版）**

| 编号 | 功能点 | 开发说明 | 处理规则 | 状态/异常 |
|---|---|---|---|---|
| E-01 | 事件时间范围 | 限定按站点时间发生的事件，不按接收时间过滤。 | 开始时间≤结束时间；结束日包含至23:59:59；查询时同时转换UTC边界。 | 超过最大查询跨度时阻止提交并提示上限。 |
| E-02 | 类型筛选 | 区分客户端行为和服务器结果，帮助判断问题发生在哪一端。 | 前端/后端类型取事件定义快照；不能根据`event_source`临时猜测。 | 历史未知类型显示“未知类型”。 |
| E-03 | 事件名筛选 | 内部名用于研发排查，中文名用于产品定位，两者可同时组合。 | 两个条件为AND；均为包含匹配；查询值做长度限制和安全转义。 | 无匹配显示空结果及当前条件。 |
| E-04 | 用户名筛选 | 通过用户账号查其事件。 | 先由用户服务解析用户ID，再用ID查询事件；避免直接扫描事件明细用户名。 | 用户不存在直接返回空，并提示“未找到用户”。 |
| E-05 | UID精确查询 | 精确定位已注册用户的事件。 | 完整匹配；与用户名同时输入时必须指向同一用户，否则提示条件冲突。 | 格式非法不发请求。 |
| E-06 | 指纹ID精确查询 | 查询匿名用户或登录前行为，并串联身份合并前后的事件。 | 完整匹配；登录后事件若保留同一指纹也应返回。 | 指纹字段脱敏策略不得破坏精确查询，可使用受控哈希。 |
| E-07 | 查询执行 | 只有点击查询才应用表单条件，避免输入过程中频繁扫描明细库。 | 保存“已应用条件”快照；查询中禁用按钮；结果按站点时间倒序。 | 失败保留上次结果并显示失败提示。 |
| E-08 | 最近20条 | 页面用于快速排查，不承担无限翻页浏览。 | 接口限制20条并返回是否还有更多；如有更多提示使用缩小条件或导出。 | 不提供前端伪分页。 |
| E-09 | 状态与延迟 | 状态说明Schema/必填字段是否正常；延迟说明接收时间与事件时间差。 | 正常=通过当前定义校验；字段缺失显示异常；延迟按毫秒/秒自适应格式。 | 客户端时钟明显漂移时标记“时间异常”，不展示负延迟。 |
| E-10 | 身份复制 | 让研发快速复制UID或指纹继续排查。 | 点击写入剪贴板并显示短暂成功提示；复制完整值需字段权限。 | 浏览器拒绝剪贴板时提示手动复制。 |
| E-11 | 事件详情 | 展示不可变事件信封和属性快照。 | 前端展示客户端属性；后端展示业务属性；JSON保持原始字段顺序或格式化只读显示。 | 超大属性截断展示并提供受权下载原始JSON。 |
| E-12 | 导出结果 | 异步导出满足当前条件的全部事件，而非仅20条。 | 导出包含已应用条件、字段权限、事件定义版本和生成时间；默认脱敏。 | 查询条件过宽时提示收窄；导出任务写审计。 |

#### 3.2.10 数据质量

**页面原型**

![数据质量页面](原型图/埋点系统V2.14.0/10_数据质量.png)

**弹窗原型**

![质量检查详情](原型图/埋点系统V2.15.0_弹窗/10_数据质量_检查详情.jpg)

**筛选条件**

| 条件 | 用途 | 规则 |
|---|---|---|
| 统计时间 | 选择近1小时、近24小时或近7天 | 默认近24小时 |
| 埋点类型 | 筛选前端或后端质量 | 默认全部 |
| 渠道 | 查看指定渠道质量 | 默认全部渠道 |
| 事件名称 | 定位指定内部事件 | 支持输入内部事件名 |
| 查询/重置 | 执行检查或恢复默认条件 | 重置后埋点类型恢复全部 |

**功能模块**

| 模块 | 功能说明 | 数据/交互规则 |
|---|---|---|
| 整体质量分 | 展示当前整体数据质量和最后检查时间 | 前端、后端指标加权计算 |
| 分类质量分 | 分开展示前端和后端质量分、事件数及监控范围 | 前端关注接收、完整、重复；后端关注接收、对账、幂等、延迟 |
| 质量检查项 | 展示检查名称、范围、类型、数值和状态 | 点击检查项打开详情抽屉 |
| 版本与服务覆盖 | 前端按APP版本、后端按业务服务展示覆盖率 | 低于门槛时使用警告状态 |
| 检查详情抽屉 | 展示检查范围、打点端、异常事件数和主要版本/服务 | 同时给出处理建议 |
| 导出异常 | 导出当前检查项异常事件 | 使用当前筛选条件和检查项 |
| 上线门槛 | 规定核心事件接收、对账及延迟阈值 | 前端接收率≥99.5%；后端接收/对账≥99.9%；P95延迟≤5秒 |

**开发级功能明细（第一版）**

| 编号 | 功能点 | 开发说明 | 处理规则 | 状态/异常 |
|---|---|---|---|---|
| Q-01 | 统计时间 | 控制质量指标的观测窗口，用于实时排障或趋势检查。 | 近1小时按分钟聚合，近24小时按小时，近7天按天；全部以接收时间判断平台是否收到。 | 数据尚在聚合时显示最后完成时间。 |
| Q-02 | 类型/渠道/事件筛选 | 缩小质量检查范围，定位特定客户端、服务或事件。 | 条件组合为AND；事件名只接受内部事件编码；切换类型后刷新可选检查项。 | 后端事件没有渠道时渠道条件显示“不适用”而非过滤为空。 |
| Q-03 | 整体质量分 | 给出当前范围的综合健康度，同时保留分项以便解释。 | 权重由质量规则配置；前后端分别算分再汇总；前端不得硬编码加权公式。 | 任一核心分项无数据时总分标记“不完整”，不能默认100分。 |
| Q-04 | 前端质量分 | 关注SDK接收成功率、字段完整率、重复率、会话和版本覆盖。 | 按客户端版本和渠道聚合；核心事件权重高于普通事件。 | 新版本样本不足时单独标记观察期。 |
| Q-05 | 后端质量分 | 关注服务器接收、业务对账、幂等、trace完整和处理延迟。 | 资金/订单事实与业务库按业务ID和最终状态对账。 | 对账任务未完成时显示“计算中”，不得沿用昨日结果。 |
| Q-06 | 检查项状态 | 每个检查项展示实际值、阈值、范围和正常/需处理状态。 | 正常或异常由服务端规则判断；页面颜色只映射状态，不自行比较。 | 临界值可显示“预警”；规则停用显示“未监控”。 |
| Q-07 | 检查详情 | 解释为什么异常以及影响哪些版本、服务和事件。 | 返回异常数量、样本、主要版本/服务、阈值、首次/最近发生时间和处理建议。 | 无异常样本时仍显示口径和阈值。 |
| Q-08 | 版本覆盖 | 说明当前活跃客户端版本中有多少正确上报核心事件。 | 分母为统计窗口内活跃客户端版本/设备；按APP版本和渠道拆分。 | 未知版本单独列出，不并入最新版本。 |
| Q-09 | 服务覆盖 | 说明应上报后端事件的业务服务是否完成接入。 | 按服务和事件定义清单比较预期/实际；服务部署版本作为辅助字段。 | 服务无流量时区分“无业务量”和“未上报”。 |
| Q-10 | 上线门槛 | 为发布验收提供明确阻断条件。 | 核心前端接收率、后端接收/对账率、P95延迟任一不达标则发布检查失败。 | 阻断结果必须列出失败项，不只显示总分。 |
| Q-11 | 导出异常 | 输出当前检查项的异常事件样本和定位字段。 | 包含event_id、事件名、版本/服务、异常字段、发生/接收时间；按权限脱敏。 | 样本过大按时间分片；导出任务需审计。 |

## 4. 人员

| 角色 | 人员 |
|---|---|
| 产品 | 待填写 |
| 设计 | 待填写 |
| 研发 | 待填写 |
