feat: add dashboard metrics service

This commit is contained in:
QiuSW
2026-07-09 01:04:50 +08:00
parent 769c861eb0
commit 2c31a41036
17 changed files with 494 additions and 22 deletions
+4 -6
View File
@@ -17,7 +17,7 @@ main.go
├─ AuditLogService # 已实现审计日志边界
├─ AppLogService # 已实现运行日志边界
├─ ImageOptimizationService # 已实现本地模拟任务模型
└─ MetricsService # 目标模块
└─ MetricsService # 已实现 P0 统计聚合
frontend/src
├─ router
@@ -43,6 +43,7 @@ frontend/src
- `internal/services/ocr_service.go`:当前 OCR 存量示例,后续可演进为图片 AI 能力的一部分。
- `internal/services/image_optimization_service.go`:负责商品图片 AI 优化任务、结果和本地模拟 provider。
- `internal/services/log_service.go`:负责审计日志和运行日志的记录、查询和共享写入 helper。
- `internal/services/metrics_service.go`:负责 P0 统计指标和趋势聚合。
- `platform/`:隔离 Windows / macOS 热键和系统能力差异。
已实现边界:
@@ -52,10 +53,7 @@ frontend/src
- `ImageOptimizationService`:商品图片 AI 优化任务模型和本地模拟任务创建已可用。
- `AuditLogService`:审计日志记录和查询已可用,登录、设置变更和图片任务创建会写审计日志。
- `AppLogService`:运行日志记录和查询已可用,图片任务创建失败和服务错误会写运行日志。
目标新增边界:
- `MetricsService`:对业务任务和日志做基础聚合,输出统计卡片和趋势数据。
- `MetricsService`:P0 统计指标和最近 N 天趋势已可查询,当前直接聚合 `image_tasks` 和 `audit_logs`。
服务之间不要互相绕过边界直接操作平台实现。新增平台能力时,优先放在 `platform/`,再由 `internal/services/` 暴露稳定方法。
@@ -198,7 +196,7 @@ app_logs(
)
```
当前 `audit_logs` 和 `app_logs` 分别用于用户动作审计和运行排错。统计数据早期直接用 SQL 聚合,不急着落 `daily_metrics` 缓存表。数据量变大后再增加缓存表。
当前 `audit_logs` 和 `app_logs` 分别用于用户动作审计和运行排错。`MetricsService` 已直接用 SQL 聚合 P0 指标,不急着落 `daily_metrics` 缓存表。数据量变大后再增加缓存表。
迁移要求: