feat: add audit and app log services
This commit is contained in:
@@ -14,8 +14,8 @@ main.go
|
||||
├─ SystemInfo
|
||||
├─ OCRService # 当前存量示例
|
||||
├─ AuthService # 已实现 provider 边界
|
||||
├─ AuditLogService # 目标模块
|
||||
├─ AppLogService # 目标模块
|
||||
├─ AuditLogService # 已实现审计日志边界
|
||||
├─ AppLogService # 已实现运行日志边界
|
||||
├─ ImageOptimizationService # 已实现本地模拟任务模型
|
||||
└─ MetricsService # 目标模块
|
||||
|
||||
@@ -42,6 +42,7 @@ frontend/src
|
||||
- `internal/services/hotkey_service.go`:负责热键读取、更新和重新注册。
|
||||
- `internal/services/ocr_service.go`:当前 OCR 存量示例,后续可演进为图片 AI 能力的一部分。
|
||||
- `internal/services/image_optimization_service.go`:负责商品图片 AI 优化任务、结果和本地模拟 provider。
|
||||
- `internal/services/log_service.go`:负责审计日志和运行日志的记录、查询和共享写入 helper。
|
||||
- `platform/`:隔离 Windows / macOS 热键和系统能力差异。
|
||||
|
||||
已实现边界:
|
||||
@@ -49,11 +50,11 @@ frontend/src
|
||||
- `AuthService`:登录、退出、会话读取;内部通过 `AuthProvider` 接入本地固定账号或真实后端。当前 `LocalAuthProvider` 可用,`RemoteAuthProvider` 保留边界并返回未配置错误。
|
||||
- `AppConfigService`:通过统一设置 schema 初始化和校验主题、语言、窗口行为、快捷键展示、数据目录、日志策略和登录配置。
|
||||
- `ImageOptimizationService`:商品图片 AI 优化任务模型和本地模拟任务创建已可用。
|
||||
- `AuditLogService`:审计日志记录和查询已可用,登录、设置变更和图片任务创建会写审计日志。
|
||||
- `AppLogService`:运行日志记录和查询已可用,图片任务创建失败和服务错误会写运行日志。
|
||||
|
||||
目标新增边界:
|
||||
|
||||
- `AuditLogService`:记录和查询用户操作审计日志。
|
||||
- `AppLogService`:记录和查询运行错误,必要时可落本地滚动日志文件。
|
||||
- `MetricsService`:对业务任务和日志做基础聚合,输出统计卡片和趋势数据。
|
||||
|
||||
服务之间不要互相绕过边界直接操作平台实现。新增平台能力时,优先放在 `platform/`,再由 `internal/services/` 暴露稳定方法。
|
||||
@@ -186,8 +187,6 @@ image_task_results(
|
||||
|
||||
当前 `image_tasks` 和 `image_task_results` 已由 `T-020` 落地,用于本地模拟图片优化任务和后续统计聚合。
|
||||
|
||||
目标新增表:
|
||||
|
||||
```sql
|
||||
app_logs(
|
||||
id INTEGER PRIMARY KEY,
|
||||
@@ -199,7 +198,7 @@ app_logs(
|
||||
)
|
||||
```
|
||||
|
||||
`app_logs` 仍待 `T-021` 落地。统计数据早期直接用 SQL 聚合,不急着落 `daily_metrics` 缓存表。数据量变大后再增加缓存表。
|
||||
当前 `audit_logs` 和 `app_logs` 分别用于用户动作审计和运行排错。统计数据早期直接用 SQL 聚合,不急着落 `daily_metrics` 缓存表。数据量变大后再增加缓存表。
|
||||
|
||||
迁移要求:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user