attacker
f725ca7cac
feat(monitor): F4 自定义监控仪表盘 — mock 桩改真实 CRUD + PromQL 查询渲染
后端:
- 新增 model/custom_dashboard.go (monitor_custom_dashboards 表)
- 新增 controller/custom_dashboard.go (CRUD + 设默认, 6 路由)
- routes.go 注册 /custom-dashboards 路由组
- database.go AutoMigrate 注册 CustomDashboard
前端:
- grafana.ts: dashboardApi 从 mock 返回空改为真实 HTTP 调用
- metrics.ts: prometheusProxyApi 新增 query/queryRange 方法
- GrafanaPanelContent.tsx: 从随机 mock 数据改为执行 PromQL 查询
+ Recharts LineChart 渲染 graph 类型
+ SVG gauge 渲染 gauge 类型
+ 数值卡片渲染 stat 类型
+ 表格渲染 table 类型
+ 30s 自动刷新 + loading/error 状态
+ 自动发现默认 Prometheus 数据源
- GrafanaDashboard.tsx: 传递 datasourceUrl 到 GrafanaPanelContent
验证: go build✅ npm build✅ 17/17 集成测试通过 E2E CRUD 全通过
2026-06-27 23:28:04 +08:00
..
2026-06-27 02:31:26 +08:00
2026-06-27 16:31:06 +08:00
2026-06-27 16:31:06 +08:00
2026-06-27 16:54:07 +08:00
2026-06-27 02:31:26 +08:00
2026-06-27 12:02:34 +08:00
2026-06-27 02:31:26 +08:00
2026-06-26 21:13:15 +08:00
2026-06-17 20:56:38 +08:00
2026-06-27 11:41:50 +08:00
2026-06-27 16:54:07 +08:00
2026-06-27 23:28:04 +08:00
2026-06-25 22:51:25 +08:00
2026-06-26 15:49:31 +00:00
2026-06-26 15:49:31 +00:00
2026-06-27 12:02:34 +08:00
2026-06-26 23:18:05 +08:00