feat(monitor): F5 链路追踪后端对接 — traceApi mock桩改真实Jaeger/Tempo代理+demo兜底
- 后端新增 monitor_trace_datasources 表 + TraceDataSource 模型 (Jaeger/Tempo) - controller/trace_datasource.go — CRUD + TestConnection + SetDefault (7 路由) - controller/trace_proxy.go — Jaeger API 代理 + 响应格式转换 (Trace/服务/Span) - GET /traces — Trace 列表 (代理 Jaeger /api/traces) - GET /traces/services — 服务列表 + P95/P99/errorRate 聚合 - GET /traces/:traceId — Trace 详情 (Span 树转换) - Demo 数据兜底: 无数据源时返回模拟数据 (6 Trace + 5 服务 + 5 Span) - 前端 traceApi 从 mock 改真实 HTTP 调用 - 前端新增 trace-datasource.ts 数据源管理 API - ROADMAP/TDD_PLAN/PROJECT_EVALUATION 文档同步更新 - 综合评分 90→91, 功能完整性 92→94 (mock API 清零)
This commit is contained in:
1 parent
0c2c0adaaf
commit
894cb16a05
23 files changed
+1085
-52
No files matched your search
+27
@@ -318,6 +318,32 @@ services/api.ts (1324L)
|
||||
|
||||
**问题**: `dashboardApi`(Grafana 仪表盘 CRUD)6 个方法全部为 mock 桩,返回空数组/false。前端 `GrafanaDashboard.tsx` 的"自定义"Tab 有完整 UI 但无法创建/保存仪表盘,面板渲染随机 mock 数据。
|
||||
|
||||
### F5: 链路追踪后端对接 [done]
|
||||
|
||||
**问题**: `traceApi`(链路追踪)3 个方法全部为 mock 桩返回空数组。前端 `TraceManager.tsx`(587 行)有完整 UI(Trace 列表/服务拓扑/性能指标/详情弹窗/Span 树可视化)但无数据展示。
|
||||
|
||||
**已完成 (2026-06-28)**:
|
||||
- ✅ 后端新增 `monitor_trace_datasources` 表 + `TraceDataSource` 模型(Jaeger/Tempo 数据源配置)
|
||||
- ✅ 后端新增 `controller/trace_datasource.go` — CRUD + TestConnection + SetDefault(7 个路由)
|
||||
- ✅ 后端新增 `controller/trace_proxy.go` — Jaeger/Tempo API 代理 + 响应格式转换
|
||||
- `GET /traces` — Trace 列表(代理 Jaeger `/api/traces`,转换为前端 Trace 格式)
|
||||
- `GET /traces/services` — 服务列表 + 性能指标聚合(代理 Jaeger `/api/services` + `/api/traces` 聚合计算 requestCount/errorRate/avgDuration/p95/p99)
|
||||
- `GET /traces/:traceId` — Trace 详情(代理 Jaeger `/api/traces/:id`,Span 树结构转换)
|
||||
- ✅ **Demo 数据兜底**:无数据源配置时后端自动返回模拟数据(6 条 Trace + 5 个服务 + 5 个 Span),UI 始终有数据展示
|
||||
- ✅ 前端 `traceApi` 从 mock 桩改为真实 HTTP 调用(对接 `/traces` REST API)
|
||||
- ✅ 前端新增 `trace-datasource.ts` — 链路追踪数据源管理 API(CRUD + 测试连接 + 设默认)
|
||||
|
||||
**验收标准**:
|
||||
- [x] `traceApi` 不再是 mock 桩,3 个方法全部对接真实后端
|
||||
- [x] 无数据源时返回 demo 数据(6 条 Trace/5 个服务/5 个 Span),UI 功能完整
|
||||
- [x] 配置 Jaeger 数据源后代理转发真实查询
|
||||
- [x] 可创建/查看/编辑/删除链路追踪数据源
|
||||
- [x] 可设默认数据源
|
||||
- [x] 可测试数据源连接(调用 `/api/services` 验证)
|
||||
- [x] `go build` 零错误
|
||||
- [x] `npm run build` 零错误(✓ built in 17.78s)
|
||||
- [x] 17/17 集成回归测试通过
|
||||
|
||||
**已完成 (2026-06-27)**:
|
||||
- ✅ 后端新增 `monitor_custom_dashboards` 表 + `CustomDashboard` 模型(面板配置存 JSON)
|
||||
- ✅ 后端新增 `controller/custom_dashboard.go` — CRUD + 设默认(6 个路由)
|
||||
@@ -356,6 +382,7 @@ services/api.ts (1324L)
|
||||
| U2 | 统一 DataTable | P3 | **done** |
|
||||
| U3 | 国际化 | P3 | **done** |
|
||||
| U4 | 镜像优化 | P3 | **done** |
|
||||
| F5 | 链路追踪后端对接 | P1 | **done** |
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in new issue
Block a user