---
type: explanation
title: 统计与会话
summary: 如何读懂一个密钥的验证漏斗、量级和时序，每张图在告诉你什么，以及该对它做什么。
---

打开一个站点密钥，就落在它的统计上。这里的一切都是聚合的，绝非逐访客数据，它的存在是为了回答两个问题：真人是否在通过，以及他们在哪里掉队？

在顶部挑一个时间范围：**今天**、**昨天**、**7 天**、**28 天**，或一个 **自定义** 窗口。下面每块和每张图都跟随你选的范围，而且你可以把整个视图收窄到单个游戏，以便把一个和另一个相比较。

## 一眼看懂漏斗

四块标题数字，从上到下作为一条漏斗来读：

- **会话已开始**：组件为一位访客挂载了。
- **客户端已完成**：访客在他们的浏览器里通过了挑战。
- **服务端已核验**：你的后端，或 [托管验证](/docs/hosted-verification/overview)，确认了令牌。
- **已拦截威胁**：挑战拦住的请求。

下面，两个派生的百分比直接把漏点点名，省得你自己去做减法：

- **用户流失** =（已开始 减 客户端已完成）除以 已开始。在完成之前就放弃的访客占比。
- **未核验的完成** =（客户端已完成 减 服务端已核验）除以 客户端已完成。你后端从未核验的有效令牌占比。

一个健康的密钥会让这两个百分比都低而稳。

## 量级随时间变化

量级图把 **已开始**、**客户端已完成** 和 **服务端已核验** 画在你的范围上。这三条线应该一起起落。当它们扇开时，两条线之间的缺口和那几块数字是同一个诊断，但现在你能看到它是 *何时* 开始的，这正是你把一次骤降系到某个具体部署或活动上的办法。

## 失败与威胁

第二张图拆解挑战到底拦住了什么：**失败的客户端完成**、**失败的服务端核验**、**速率限制拒绝**，以及 **挑战阻断**。每一个都是一种不同的麻烦。一次突然的飙升就是你的早期预警：挑战阻断的跳升往往意味着一波机器人来袭并被挡了回去，而持续的速率限制拒绝则暗示要么是一次攻击，要么是 [速率限制](/docs/site-keys/security) 对你真实的流量设得太低了。

## 时序

时序图显示访客花了多久，以 **中位数（p50）**、**p95** 和 **平均** 给出，分四个区段：

- **游玩时间**：访客在游戏本身里花的时间。
- **完成耗时**：从组件挂载到挑战被通过。
- **核验耗时**：从完成到你的服务器确认令牌。
- **总会话**：整件事，从头到尾。

盯着 **p95** 看，而不是平均。寥寥几个很慢的访客会消失在平均里，但在 p95 上清清楚楚地冒头，而他们正是在放弃的那些人。如果 p95 上的 **完成耗时** 在爬升，那么挑战对最慢的设备太重了，所以放松 [难度](/docs/site-keys/security)。如果 **核验耗时** 是慢的那部分，那么延迟在你自己的后端上，不在组件上。

## 有效地使用它

把这一页当作一次快速的健康检查来读，然后只在某处不对劲的地方钻进去：

- **量级线一起走、两个百分比都低、p95 时序宽裕** 意味着它在正常工作。别动它。
- **流失在爬升** 是摩擦。降低 [难度](/docs/site-keys/security)，确认游戏加载得快，并检查它在一部手机上、用一个键盘都能用。
- **未核验的完成在爬升** 意味着令牌挣到了却没被核验，于是表单其实没受保护。重看 [在你的后端核验](/docs/integration-guides/verify-on-your-backend)。
- **威胁或失败在飙升** 通常是一次正被处理的攻击，或一个设得太紧的过滤器。在你放松任何东西之前，先确认真实访客没被逮住。

筛选到一个游戏会把这一页变成一场比较：一个流失明显更差、或 p95 更长的游戏，就是一个从你轮换里剔除的候选。

## 会话日志

在付费套餐上，会话日志列出一个个验证会话。在图表告诉你某处不对劲、而你想看那些具体案例之后，*再* 去用它。每个会话都带一个你能据以筛选的结果：

| 结果 | 含义 |
|---|---|
| 已核验 | 令牌在服务端被确认了 |
| 核验被拒 | 服务器检查跑了但失败了 |
| 兑换被拒 | 浏览器挑战没有完成 |
| 待定 | 已开始，尚未结清 |
| 已过期 | 令牌在被用之前就超时了 |

你也可以按游戏筛选这份日志。经过 [预览模式](/docs/site-keys/preview-mode) 的会话带有 **预览** 标记，于是测试流量很容易和真正的通过区分开。

## Caputchin 不采集什么

这些数字在访客方面是有意稀薄的。Caputchin 的构建就是为了不收集逐人数据，统计和会话日志都体现这一点。它们从不包含：

- **访客的 IP 地址。** 它在一个请求到达验证之前就在平台边界处被剥离（见 [必需的头](/docs/site-keys/security)），所以没有什么可记录的。
- **访客的 User-Agent，或任何设备或浏览器指纹。** 在同一道边界处被剥离。
- **访客的任何姓名、邮箱或身份。** Caputchin 不知道他们是谁。
- **访客身上没有追踪 cookie**，也没有从一个站点跟到下一个站点的画像。

一条会话记录只持有验证本身：它的时序、跑了哪个游戏、以及结果（外加，在一个游戏提供记分牌的地方，访客自己选择填入的那个短昵称和分数）。统计是从那些记录建出的聚合计数和时序，绝非一份逐访客的历史。

## 另见

- [在你的后端核验](/docs/integration-guides/verify-on-your-backend)
- [安全](/docs/site-keys/security)，看塑造这些数字的那些设置。
