52 lines
1.9 KiB
Markdown
52 lines
1.9 KiB
Markdown
|
|
# 2026-06-08 — 脚本库执行详情中文化与服务器名称
|
||
|
|
|
||
|
|
## 日期
|
||
|
|
2026-06-08
|
||
|
|
|
||
|
|
## 变更摘要
|
||
|
|
脚本库「执行详情」弹窗:每台服务器状态翻译为中文;服务器列显示名称与地址;失败项快速定位(摘要、筛选、展开输出、复制、终端跳转);历史列表显示失败台数。
|
||
|
|
|
||
|
|
## 动机
|
||
|
|
执行详情表格直接展示 `pending`/`success` 等英文状态及数字 ID,运维难以快速对应目标机。
|
||
|
|
|
||
|
|
## 涉及文件
|
||
|
|
| 文件 | 说明 |
|
||
|
|
|------|------|
|
||
|
|
| `frontend/src/utils/scriptExecutionLabels.ts` | 整体/单台状态中文映射 |
|
||
|
|
| `frontend/src/pages/ScriptsPage.vue` | 详情表绑定名称与中文状态 |
|
||
|
|
|
||
|
|
## 状态映射示例
|
||
|
|
| 原始 | 中文 |
|
||
|
|
|------|------|
|
||
|
|
| pending | 后台执行中 |
|
||
|
|
| success / completed | 成功 / 已完成 |
|
||
|
|
| failed / error | 失败 / 错误 |
|
||
|
|
| skipped | 已跳过 |
|
||
|
|
| timeout | 超时 |
|
||
|
|
| connection_error | 连接失败 |
|
||
|
|
|
||
|
|
## 是否需迁移
|
||
|
|
否
|
||
|
|
|
||
|
|
## 是否需重启
|
||
|
|
是(后端 progress 计算逻辑)
|
||
|
|
|
||
|
|
## 进度语义(2026-06-08 补充)
|
||
|
|
- API `progress` 由 `success/total` 表示(成功台数/总台数)
|
||
|
|
- 失败、跳过、超时、连接失败等**不计入分子**;1 台失败时显示 `365/366` 而非 `366/366`
|
||
|
|
- 涉及:`server/infrastructure/redis/script_execution_store.py` — `execution_progress_summary`
|
||
|
|
|
||
|
|
## 批量执行状态面板
|
||
|
|
- 仅展示 `running` 任务;失败/完成/部分成功/已取消后自动移出面板
|
||
|
|
- 终态任务请查看下方「全部执行历史」
|
||
|
|
|
||
|
|
## 失败快速定位
|
||
|
|
- 打开失败/部分成功记录时默认「仅失败」筛选,并展开首台失败输出
|
||
|
|
- 顶部红色告警列出全部失败服务器名称
|
||
|
|
- 行点击展开完整 stderr/stdout;支持复制、跳转终端
|
||
|
|
- 执行历史进度列显示「N 台失败」Chip
|
||
|
|
|
||
|
|
## 验证方式
|
||
|
|
1. `cd frontend && npm run build`
|
||
|
|
2. `#/scripts` → 打开失败记录「详情」,确认失败筛选、名称、中文状态、展开输出
|