- 更新 TestComputeBusinessHealth 中 SLA 95% 边界测试的期望值 - 更新 TestComputeDashboardHealthScore 中中等健康度测试的期望值 - 适配移除延迟组件后的新健康分数计算逻辑
165 lines
5.5 KiB
Markdown
165 lines
5.5 KiB
Markdown
## 概述
|
||
|
||
全面增强运维监控系统(Ops)的错误日志管理和告警静默功能,优化前端 UI 组件代码质量和用户体验。本次更新重构了核心服务层和数据访问层,提升系统可维护性和运维效率。
|
||
|
||
## 主要改动
|
||
|
||
### 1. 错误日志查询优化
|
||
|
||
**功能特性:**
|
||
- 新增 GetErrorLogByID 接口,支持按 ID 精确查询错误详情
|
||
- 优化错误日志过滤逻辑,支持多维度筛选(平台、阶段、来源、所有者等)
|
||
- 改进查询参数处理,简化代码结构
|
||
- 增强错误分类和标准化处理
|
||
- 支持错误解决状态追踪(resolved 字段)
|
||
|
||
**技术实现:**
|
||
- `ops_handler.go` - 新增单条错误日志查询接口
|
||
- `ops_repo.go` - 优化数据查询和过滤条件构建
|
||
- `ops_models.go` - 扩展错误日志数据模型
|
||
- 前端 API 接口同步更新
|
||
|
||
### 2. 告警静默功能
|
||
|
||
**功能特性:**
|
||
- 支持按规则、平台、分组、区域等维度静默告警
|
||
- 可设置静默时长和原因说明
|
||
- 静默记录可追溯,记录创建人和创建时间
|
||
- 自动过期机制,避免永久静默
|
||
|
||
**技术实现:**
|
||
- `037_ops_alert_silences.sql` - 新增告警静默表
|
||
- `ops_alerts.go` - 告警静默逻辑实现
|
||
- `ops_alerts_handler.go` - 告警静默 API 接口
|
||
- `OpsAlertEventsCard.vue` - 前端告警静默操作界面
|
||
|
||
**数据库结构:**
|
||
|
||
| 字段 | 类型 | 说明 |
|
||
|------|------|------|
|
||
| rule_id | BIGINT | 告警规则 ID |
|
||
| platform | VARCHAR(64) | 平台标识 |
|
||
| group_id | BIGINT | 分组 ID(可选) |
|
||
| region | VARCHAR(64) | 区域(可选) |
|
||
| until | TIMESTAMPTZ | 静默截止时间 |
|
||
| reason | TEXT | 静默原因 |
|
||
| created_by | BIGINT | 创建人 ID |
|
||
|
||
### 3. 错误分类标准化
|
||
|
||
**功能特性:**
|
||
- 统一错误阶段分类(request|auth|routing|upstream|network|internal)
|
||
- 规范错误归属分类(client|provider|platform)
|
||
- 标准化错误来源分类(client_request|upstream_http|gateway)
|
||
- 自动迁移历史数据到新分类体系
|
||
|
||
**技术实现:**
|
||
- `038_ops_errors_resolution_retry_results_and_standardize_classification.sql` - 分类标准化迁移
|
||
- 自动映射历史遗留分类到新标准
|
||
- 自动解决已恢复的上游错误(客户端状态码 < 400)
|
||
|
||
### 4. Gateway 服务集成
|
||
|
||
**功能特性:**
|
||
- 完善各 Gateway 服务的 Ops 集成
|
||
- 统一错误日志记录接口
|
||
- 增强上游错误追踪能力
|
||
|
||
**涉及服务:**
|
||
- `antigravity_gateway_service.go` - Antigravity 网关集成
|
||
- `gateway_service.go` - 通用网关集成
|
||
- `gemini_messages_compat_service.go` - Gemini 兼容层集成
|
||
- `openai_gateway_service.go` - OpenAI 网关集成
|
||
|
||
### 5. 前端 UI 优化
|
||
|
||
**代码重构:**
|
||
- 大幅简化错误详情模态框代码(从 828 行优化到 450 行)
|
||
- 优化错误日志表格组件,提升可读性
|
||
- 清理未使用的 i18n 翻译,减少冗余
|
||
- 统一组件代码风格和格式
|
||
- 优化骨架屏组件,更好匹配实际看板布局
|
||
|
||
**布局改进:**
|
||
- 修复模态框内容溢出和滚动问题
|
||
- 优化表格布局,使用 flex 布局确保正确显示
|
||
- 改进看板头部布局和交互
|
||
- 提升响应式体验
|
||
- 骨架屏支持全屏模式适配
|
||
|
||
**交互优化:**
|
||
- 优化告警事件卡片功能和展示
|
||
- 改进错误详情展示逻辑
|
||
- 增强请求详情模态框
|
||
- 完善运行时设置卡片
|
||
- 改进加载动画效果
|
||
|
||
### 6. 国际化完善
|
||
|
||
**文案补充:**
|
||
- 补充错误日志相关的英文翻译
|
||
- 添加告警静默功能的中英文文案
|
||
- 完善提示文本和错误信息
|
||
- 统一术语翻译标准
|
||
|
||
## 文件变更
|
||
|
||
**后端(26 个文件):**
|
||
- `backend/internal/handler/admin/ops_alerts_handler.go` - 告警接口增强
|
||
- `backend/internal/handler/admin/ops_handler.go` - 错误日志接口优化
|
||
- `backend/internal/handler/ops_error_logger.go` - 错误记录器增强
|
||
- `backend/internal/repository/ops_repo.go` - 数据访问层重构
|
||
- `backend/internal/repository/ops_repo_alerts.go` - 告警数据访问增强
|
||
- `backend/internal/service/ops_*.go` - 核心服务层重构(10 个文件)
|
||
- `backend/internal/service/*_gateway_service.go` - Gateway 集成(4 个文件)
|
||
- `backend/internal/server/routes/admin.go` - 路由配置更新
|
||
- `backend/migrations/*.sql` - 数据库迁移(2 个文件)
|
||
- 测试文件更新(5 个文件)
|
||
|
||
**前端(13 个文件):**
|
||
- `frontend/src/views/admin/ops/OpsDashboard.vue` - 看板主页优化
|
||
- `frontend/src/views/admin/ops/components/*.vue` - 组件重构(10 个文件)
|
||
- `frontend/src/api/admin/ops.ts` - API 接口扩展
|
||
- `frontend/src/i18n/locales/*.ts` - 国际化文本(2 个文件)
|
||
|
||
## 代码统计
|
||
|
||
- 44 个文件修改
|
||
- 3733 行新增
|
||
- 995 行删除
|
||
- 净增加 2738 行
|
||
|
||
## 核心改进
|
||
|
||
**可维护性提升:**
|
||
- 重构核心服务层,职责更清晰
|
||
- 简化前端组件代码,降低复杂度
|
||
- 统一代码风格和命名规范
|
||
- 清理冗余代码和未使用的翻译
|
||
- 标准化错误分类体系
|
||
|
||
**功能完善:**
|
||
- 告警静默功能,减少告警噪音
|
||
- 错误日志查询优化,提升运维效率
|
||
- Gateway 服务集成完善,统一监控能力
|
||
- 错误解决状态追踪,便于问题管理
|
||
|
||
**用户体验优化:**
|
||
- 修复多个 UI 布局问题
|
||
- 优化交互流程
|
||
- 完善国际化支持
|
||
- 提升响应式体验
|
||
- 改进加载状态展示
|
||
|
||
## 测试验证
|
||
|
||
- ✅ 错误日志查询和过滤功能
|
||
- ✅ 告警静默创建和自动过期
|
||
- ✅ 错误分类标准化迁移
|
||
- ✅ Gateway 服务错误日志记录
|
||
- ✅ 前端组件布局和交互
|
||
- ✅ 骨架屏全屏模式适配
|
||
- ✅ 国际化文本完整性
|
||
- ✅ API 接口功能正确性
|
||
- ✅ 数据库迁移执行成功
|