feat: 导出增加用户名 + 用户LD板数 (快照级两列, 新增 group=users 用户级导出)

- 快照级 CSV/JSON 追加 用户名/用户LD板数 列 (DomainDetail 逐域聚合, 板键=rack+cluster+ld)
- 新增 group=users: 每快照x每用户一行, 含板号/Rack/域数/设计/T-Pod/运行时间
- 导出弹窗加导出粒度选项; README 同步
This commit is contained in:
Your Name
2026-09-01 16:37:31 +08:00
parent 5c42d802c0
commit 8ca1728ec5
3 changed files with 136 additions and 13 deletions
+16 -5
View File
@@ -113,11 +113,13 @@ curl -X POST http://<服务器>:5100/api/collect \
### 导出历史数据
`/api/export` 端点支持 CSV (Excel 友好, 带 UTF-8 BOM) 和 JSON 两种格式,可按时间范围和来源过滤。
`/api/export` 端点支持 CSV (Excel 友好, 带 UTF-8 BOM) 和 JSON 两种格式,可按时间范围和来源过滤,并支持两种导出粒度
```
GET /api/export?format=csv # 默认: CSV 全部
GET /api/export?format=json # JSON 全部
GET /api/export?format=csv # 默认: 快照级 CSV 全部
GET /api/export?format=json # 快照级 JSON 全部
GET /api/export?group=users # 用户级: 每条快照 × 每个用户一行
GET /api/export?group=users&format=json # 用户级 JSON
GET /api/export?days=7 # 最近 7 天
GET /api/export?since=2026-07-01&until=2026-07-31 # 自定义范围
GET /api/export?source=collect.py # 按来源模糊匹配
@@ -126,14 +128,23 @@ GET /api/export?format=json&days=30&source=scmp03 # 组合
参数说明:
- `format`: `csv` (默认) 或 `json`
- `group`: `snapshots` (默认) 或 `users` — 见下方两种粒度
- `days`: 限制最近 N 天 (0/缺省 = 全部)
- `since` / `until`: `YYYY-MM-DD` 或 ISO 时间戳
- `source`: 模糊匹配 `source` 字段 (如 `collect.py``scmp03`)
- `limit`: 最多返回条数 (默认 10000, 上限 100000)
CSV 文件名: `palladium_snapshots_YYYYMMDD_HHMMSS.csv`包含 19 列(时间本地+UTC、仿真器/硬件/ConfigMgr、系统状态、来源、板/域计数、利用率、作业数等)
**粒度一: 按快照 (`group=snapshots`, 默认)** — 每条快照一行,CSV 文件名 `palladium_snapshots_YYYYMMDD_HHMMSS.csv`21 列(时间本地+UTC、仿真器/硬件/ConfigMgr、系统状态、来源、板/域计数、利用率、作业数等),末尾追加:
- `用户名`: 该快照下占用 LD 板的所有用户 (逗号分隔,如 `pzuser102, pzuser103`)
- `用户LD板数`: 与用户名顺序对应的各用户占用 LD 板数 (如 `6, 5`)
Web 界面入口:历史记录页右上角「📤 导出」按钮
JSON 格式每行额外附 `users` 数组 (含每用户板号/域数/设计名/运行时间明细)
**粒度二: 按用户 (`group=users`)** — 每条快照 × 每个占用 LD 板的用户一行,CSV 文件名 `palladium_users_YYYYMMDD_HHMMSS.csv`,12 列: 快照 ID、时间(本地/UTC)、数据来源、**用户名**、**用户LD板数**、LD 板号、Rack、占用域数、设计名、T-Pod、运行时间。
> 用户名/LD 板数来自详细版 `test_server` 输出的逐域归属数据 (DomainDetail);短格式 (`test_server -short`) 快照无逐域归属,快照级导出用户列显示 `-`,用户级导出中不出现该快照。
Web 界面入口:历史记录页右上角「📤 导出」按钮,弹窗内可选导出粒度。
## 解析器支持的输出格式