1. 03 Feb, 2026 1 commit
  2. 02 Feb, 2026 1 commit
  3. 15 Jan, 2026 6 commits
    • IanShaw027's avatar
      refactor(ops): 简化自动刷新定时器逻辑 · 8b95d162
      IanShaw027 authored
      - 合并双定时器为单一倒计时定时器
      - 倒计时归零时触发数据刷新
      - 添加自定义时间范围的安全回退
      8b95d162
    • IanShaw027's avatar
      refactor(ops): 优化任务心跳和组件刷新机制 · 23aa69f5
      IanShaw027 authored
      后端改动:
      - 添加 ops_job_heartbeats.last_result 字段记录任务执行结果
      - 优化告警评估器统计信息(规则数/事件数/邮件数)
      - 统一各定时任务的心跳记录格式
      
      前端改动:
      - 重构 OpsConcurrencyCard 使用父组件统一控制刷新节奏
      - 移除独立的 5 秒刷新定时器,改用 refreshToken 机制
      - 修复 TypeScript 类型错误
      23aa69f5
    • IanShaw027's avatar
      fix(ops): 请求时长详情显示所有请求 · e93f0864
      IanShaw027 authored
      - 移除请求时长卡片详情按钮的 min_duration_ms 参数限制
      - 现在点击详情会显示所有请求,按时长倒序排列
      - 不再只显示 P99 以上的请求
      e93f0864
    • IanShaw027's avatar
      feat(ops): 添加自定义时间范围选择功能 · 930e9ee5
      IanShaw027 authored
      功能特性:
      - 在时间段选择器中增加"自定义"选项
      - 点击后弹出对话框,支持选择任意时间范围
      - 使用 HTML5 datetime-local 输入框,体验友好
      - 自定义时显示格式化的时间范围标签(MM-DD HH:mm ~ MM-DD HH:mm)
      - 默认初始化为最近1小时
      
      技术实现:
      - 扩展 TimeRange 类型支持 'custom'
      - 添加 customStartTime 和 customEndTime 状态管理
      - 创建 buildApiParams 辅助函数统一处理 API 参数
      - 当选择自定义时,使用 start_time 和 end_time 参数替代 time_range
      - 更新所有相关 API 调用支持自定义时间范围
      
      国际化:
      - 添加"自定义"、"开始时间"、"结束时间"翻译
      930e9ee5
    • IanShaw027's avatar
      refactor(ops): 优化阈值检查系统和布局 · 38961ba1
      IanShaw027 authored
      阈值检查系统优化:
      - 引入三级阈值系统(normal/warning/critical)
      - 统一阈值判断逻辑,支持警告和严重两个级别
      - 移除硬编码的 TTFT 颜色判断,改用阈值配置
      - 新增 getThresholdColorClass 统一颜色映射
      
      布局优化:
      - 优化详细指标在卡片内的响应式布局
      - 改进宽屏下的卡片布局显示
      - 优化指标数值的对齐和间距
      38961ba1
    • yangjianbo's avatar
      feat: merge dev · 90bce60b
      yangjianbo authored
      90bce60b
  4. 14 Jan, 2026 12 commits
  5. 12 Jan, 2026 7 commits
    • Edric Li's avatar
      feat(ops): 添加运维监控全屏模式 · 0da51507
      Edric Li authored
      - 支持通过 URL 参数 ?fullscreen=1 进入全屏模式
      - 全屏模式下隐藏非必要 UI 元素(选择器、按钮、提示等)
      - 增大健康评分圆环和字体以提升可读性
      - 支持 ESC 键退出全屏
      - 添加全屏按钮的 i18n 翻译
      0da51507
    • IanShaw027's avatar
      feat(ops): 添加自动刷新配置功能 · b98fb013
      IanShaw027 authored
      功能特性:
      - 支持配置启用/禁用自动刷新
      - 可配置刷新间隔(15秒/30秒/60秒)
      - 实时倒计时显示,用户可见下次刷新时间
      - 手动刷新自动重置倒计时
      - 页面卸载时自动清理定时器
      
      用户体验:
      - 默认禁用,用户可根据需求开启
      - 与现有 OpsConcurrencyCard 5秒刷新保持一致
      - 倒计时带旋转动画,视觉反馈清晰
      - 配置修改后立即生效,无需刷新页面
      
      技术实现:
      - ops.ts: 添加 auto_refresh_enabled 和 auto_refresh_interval_seconds 配置
      - OpsSettingsDialog.vue: 添加自动刷新配置界面
      - OpsDashboard.vue: 实现主刷新逻辑和双定时器设计
      - OpsDashboardHeader.vue: 倒计时显示组件
      
      配置说明:
      - auto_refresh_enabled: 是否启用(默认 false)
      - auto_refresh_interval_seconds: 刷新间隔(默认 30 秒,范围 15-300 秒)
      b98fb013
    • IanShaw027's avatar
      fix(ops): 修复错误日志和请求详情模态框的布局问题 · 89c1a413
      IanShaw027 authored
      - 修复 OpsErrorDetailsModal 的内容溢出问题,使用 flex 布局确保正确显示
      - 修复 OpsErrorLogTable 的表格滚动问题,添加 min-h-0 确保正确的滚动行为
      - 修复 OpsRequestDetailsModal 的布局问题,添加 pageSize 初始化并优化 flex 布局
      - 统一使用 flex 布局模式,确保模态框内容在不同屏幕尺寸下正确显示
      89c1a413
    • IanShaw027's avatar
      fix(ops): 修正卡片标题翻译 · 8e248e08
      IanShaw027 authored
      - 卡片标题显示"请求"
      - 卡片内部标签保持"请求数"
      8e248e08
    • IanShaw027's avatar
      fix(ops): 优化卡片标题和明细筛选逻辑 · f55ba3f6
      IanShaw027 authored
      - 将"请求数"改为"请求"
      - SLA卡片明细只显示错误请求(kind='error')
      - TTFT卡片明细按延迟降序排序
      f55ba3f6
    • IanShaw027's avatar
      feat(ops): 看板上应用指标阈值显示 · 72a2ed95
      IanShaw027 authored
      - 在OpsDashboard中加载阈值配置
      - 在OpsDashboardHeader中根据阈值判断指标是否超标
      - 超出阈值的指标显示为红色(SLA低于阈值也显示红色)
      - 用Icon组件替换emoji表情
      72a2ed95
    • IanShaw027's avatar
      feat(ops): 添加指标阈值配置UI · d0b91a40
      IanShaw027 authored
      - 在OpsSettingsDialog中添加指标阈值配置表单
      - 在OpsRuntimeSettingsCard中添加阈值配置区域
      - 添加阈值验证逻辑
      - 更新国际化文本
      d0b91a40
  6. 11 Jan, 2026 13 commits
    • IanShaw027's avatar
      feat(ops): 增强上游错误追踪和新增定时报告服务 · 73b62bb1
      IanShaw027 authored
      - 优化错误日志中间件,即使请求成功也记录上游重试/故障转移事件
      - 新增OpsScheduledReportService支持定时报告功能
      - 使用Redis分布式锁确保定时任务单实例执行
      - 完善依赖注入配置
      - 优化前端错误趋势图表展示
      73b62bb1
    • IanShaw027's avatar
      feat(ops): 优化健康评分算法和智能诊断机制 · 8fffcd80
      IanShaw027 authored
      - 采用分层加权评分(业务70% + 基础设施30%),避免重复扣分
      - 新增延迟诊断(P99 > 2s critical, > 1s warning)
      - 新增资源诊断(CPU/内存/DB/Redis状态)
      - 调整诊断阈值(上游错误率5% critical,请求错误率3% critical)
      - 为每个诊断项添加可操作建议
      - 添加完整的单元测试覆盖(30+测试用例)
      - 完善中英文国际化文本
      8fffcd80
    • IanShaw027's avatar
    • IanShaw027's avatar
    • IanShaw027's avatar
      92eafbc2
    • IanShaw027's avatar
      feat(ops): 统一弹窗组件并优化分页设置 · 1b938b20
      IanShaw027 authored
      - OpsErrorDetailsModal和OpsRequestDetailsModal改用BaseDialog统一弹窗组件
      - 分页默认值从50改为20条,减少单页数据量
      - OpsAlertEventsCard表格添加sticky表头,优化滚动体验
      - 移除自定义Teleport和Transition实现,使用统一组件
      1b938b20
    • IanShaw027's avatar
      feat(ops): 添加分组和账号级别监控指标 · dd59e872
      IanShaw027 authored
      - 后端新增 GetAccountAvailability 方法获取账号可用性数据
      - 添加分组可用率和限流率计算辅助函数
      - 前端支持分组和账号级别的监控指标类型
      - 优化警报规则指标选择器,按类别分组显示
      dd59e872
    • IanShaw027's avatar
      feat(ops): 隐藏查询模式选择器 · 63dc6a68
      IanShaw027 authored
      - 在OpsDashboardHeader中隐藏queryMode选择器(使用v-if="false")
      - 保留所有后端逻辑和前端状态管理
      - auto模式逻辑:优先使用预聚合数据,不存在时回退到实时计算
      - 用户界面更简洁,后端自动选择最优查询方式
      
      相关文件:
      - frontend/src/views/admin/ops/components/OpsDashboardHeader.vue
      63dc6a68
    • IanShaw027's avatar
      feat(ops): 集成运维监控设置对话框到仪表盘 · a39316e0
      IanShaw027 authored
      - 在OpsDashboardHeader添加设置和警报规则按钮
      - 在OpsDashboard集成OpsSettingsDialog组件
      - 添加警报规则弹窗展示
      - 添加高级设置API类型定义
      - 支持从Header快速访问设置和规则管理
      
      相关文件:
      - frontend/src/api/admin/ops.ts
      - frontend/src/views/admin/ops/types.ts
      - frontend/src/views/admin/ops/OpsDashboard.vue
      - frontend/src/views/admin/ops/components/OpsDashboardHeader.vue
      a39316e0
    • IanShaw027's avatar
      feat(ops): 优化警报规则和设置的成功提示信息 · f5416368
      IanShaw027 authored
      - 添加警报规则保存成功提示:"警报规则保存成功"
      - 添加警报规则删除成功提示:"警报规则删除成功"
      - 添加运维监控设置保存成功提示:"运维监控设置保存成功"
      - 替换通用的"操作成功"提示为具体的业务提示
      - 失败时显示后端返回的详细错误信息
      
      相关文件:
      - frontend/src/i18n/locales/zh.ts
      - frontend/src/views/admin/ops/components/OpsAlertRulesCard.vue
      - frontend/src/views/admin/ops/components/OpsSettingsDialog.vue
      f5416368
    • IanShaw027's avatar
      feat(ops): 优化仪表盘Header响应式布局与指标展示 · e4bc9f6f
      IanShaw027 authored
      **响应式优化**:
      - 添加flex-wrap支持窄屏时间选择器自动换行
      - 当前QPS/TPS在窄屏时自动换行,避免溢出
      - 时间按钮在窄屏使用更小字号和间距(9px/1.5px)
      - 当前数值使用响应式字体(xl→sm:2xl)
      
      **指标展示优化**:
      1. 请求卡片:
         - 标题简化:总请求 → 请求
         - 字段调整:请求 → 请求数
         - 移除:平均延迟、平均首字延迟(避免冗余)
      
      2. 延迟和TTFT卡片:
         - 布局:grid → flex-wrap(自适应布局)
         - 指标不换行:添加whitespace-nowrap
         - 最小宽度:min-w-[60px]保证可读性
         - 单位内联:名称、数值、单位在同一行(P95: 123 ms)
         - 自动换行:整个指标项作为整体换行
      
      **效果**:
      - 窄屏:所有元素自动适配,无溢出
      - 宽屏:充分利用空间,清晰展示
      - 灵活布局:根据容器宽度自动调整指标排列
      e4bc9f6f
    • IanShaw027's avatar
      feat(ops): 增强错误详情弹窗与API支持 · e5857161
      IanShaw027 authored
      **前端改动**:
      1. OpsErrorDetailModal.vue:
         - 新增上游错误详情展示功能
         - 支持查看上游错误的请求头、响应体等调试信息
         - 改进错误信息格式化与可读性
      
      2. ops.ts API:
         - 新增getUpstreamErrors接口调用上游错误查询API
      
      **后端配置**:
      - config.go/config.yaml/deploy/config.example.yaml:
        - 更新配置支持上游错误事件记录开关
        - 添加相关配置项文档说明
      e5857161
    • IanShaw027's avatar
      feat(ops): 恢复仪表盘脉搏动画效果 · abdc4f39
      IanShaw027 authored
      - 将静态QPS历史折线图替换为动画脉搏线
      - 使用SVG animate元素实现心跳效果(2秒循环动画)
      - 增强流量可视化:通过脉冲跳动直观展示流量"活跃"状态
      - 恢复重构前的视觉效果与用户体验
      abdc4f39