Files
pikasTech-unidesk/docs/reference/sub2api-user-feedback.md
T

62 lines
3.1 KiB
Markdown

# Sub2API 用户反馈只读追踪
## 入口
- 按用户邮箱或正整数用户 ID 查询:
```bash
bun scripts/cli.ts platform-infra sub2api codex-pool feedback \
--target PK01 \
--user <email-or-id>
```
- 默认窗口为 `30m`;可显式选择 `5m|30m|1h|6h|24h|7d|30d`。
- 默认输出 Kubernetes 列表风格紧凑文本;只有显式 `--json` 才输出完整脱敏 JSON。
- 请求表固定返回 10 条,并输出 `returned`、`total`、`moreAvailable`、`nextPageToken`;下一页使用 CLI 给出的完整 `Next` 命令,不提供手工 `limit`。
- `REQUEST ID INDEX` 输出当前页完整、可复制的 request ID;主表使用页内序号避免重复宽字段。
- 按默认表格中的 client request ID 或内部 request ID 下钻:
```bash
bun scripts/cli.ts platform-infra sub2api codex-pool feedback \
--target PK01 \
--user <email-or-id> \
--request-id <client-or-internal-id>
```
- 稳定游标下一页:
```bash
bun scripts/cli.ts platform-infra sub2api codex-pool feedback \
--target PK01 \
--user <email-or-id> \
--window 24h \
--page-token <nextPageToken>
```
## 证据组合
- 用户与 API Key:使用 Sub2API 原生 `admin users` 和用户 API Key 列表,输出邮箱、名称、分组与当前并发,不输出 Key 值。
- 请求时间线:自动分页读取窗口内全部 `ops requests`,逐项显示相邻请求空窗、模型、状态、耗时、账号和 proxy。
- ID 关联:一次读取 `ops system-logs`,在本地关联 client request ID 与内部 request ID;指定 `--request-id` 时披露关联日志。
- 实时状态:组合用户、账号和分组并发,区分无入站证据、排队、在途与已完成。
- 基础设施:组合账号可用性、账号当前状态、proxy 状态和 Sub2API 组件健康摘要。
## 归因边界
- `client-before-submit-or-no-inbound-evidence` 表示窗口内没有 Sub2API 入站记录且实时并发为零,不等价于证明客户端没有尝试调用。
- `sub2api-queue` 需要实时等待队列证据;`in-flight` 需要实时并发证据。
- `upstream-first-byte-stream`、`proxy-egress` 和 `client-connection` 只根据原生 Ops 日志、账号、proxy 与基础设施证据分类,不执行探针或写操作。
- 无足够分层证据时返回 `sub2api-or-upstream-unknown`,禁止扩大结论。
## 脱敏与只读
- 入口只调用 GET 类 admin/ops 接口、管理员登录和运行组件健康读取。
- 不调用账号测试、探针、调度、取消、清理、更新或其他运行面写接口。
- JSON 和文本均不披露 API Key、管理员 token、账号 credentials、proxy 用户名、密码或其他 Secret。
- 所有分页由 CLI 自动完成,不提供手工 `limit` 作为输出规避手段。
## 调用量
- issue `#2000` 的人工调查包含用户、请求、系统日志、两种 request ID trace、账号、proxy、进程/端口和 journal 共 9 次工具入口。
- 本入口将用户侧工具调用收敛为 1 次,减少 8 次,即 `88.9%`;内部只读 API 来源在 JSON `sources` 字段披露。