Files
hzhub/hzhub-erp/docs/api-stats-update-log.md
大壮 c2513849b4 feat: 添加ERP服务和系统服务,完善员工门户功能
## 新增服务模块

### 1. ERP服务 (hzhub-erp)
- 新增独立的ERP数据适配服务
- 支持SQL Server 2008 R2数据源
- 提供动态API配置管理系统
- 包含客户管理、销售数据等业务接口

### 2. 系统服务 (hzhub-system)
- 新增独立的系统管理服务
- 用户、角色、权限、部门、菜单管理
- 租户管理、操作日志、在线用户监控
- 工作流引擎(warm-flow)集成
- 企业微信审批同步功能

### 3. API网关 (hzhub-gateway)
- 新增Spring Cloud Gateway网关服务
- JWT认证、路由分发、限流熔断
- XSS防护、请求日志记录
- 统一入口端口8080

## 后台管理功能增强

### ERP动态API管理
- 新增动态API配置管理界面
- API测试、文档预览、统计监控
- 错误日志查看、缓存管理
- 从数据库表自动导入API配置

### 系统管理增强
- 企业微信配置管理
- 企业微信审批同步配置
- 部门和用户管理优化

## 员工门户功能完善

### 业务页面
- 审批中心:工作流审批、待办任务
- CRM管理:客户关系管理
- 经销商管理:经销商数据展示
- 供应链管理:采购、库存、销售
- BI报表:数据可视化分析
- ERP数据探索:SQL Server数据查询

### 个人中心
- 基本设置:个人信息管理
- 安全设置:密码修改、登录日志
- 锁屏功能:自动锁屏、手动锁屏

### 其他功能
- 标签页管理:多标签页导航
- 页面缓存:keepAlive缓存机制
- 会话超时:自动检测并提示

## 经销商门户

### 页面路由
- 新增经销商管理页面路由
- AI聊天界面完善

## 文档更新

- ERP API数据库初始化指南
- ERP API前端完整实现文档
- ERP API测试和验证指南
- Gateway路由迁移计划
- 项目配置文档更新

## 部署脚本

- 统一启动/停止/重启脚本
- Docker Compose配置优化
- Nginx配置文件更新

## 技术栈

- 后端: Spring Boot 3.5.8, Java 17
- 前端: Vue 3, TypeScript, Element Plus, Vben Admin
- 工作流: warm-flow 1.8.2
- 网关: Spring Cloud Gateway
- 数据库: MySQL 8.0, SQL Server 2008 R2
- 缓存: Redis 7
- 向量库: Weaviate 1.25.0

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-08 08:00:19 +00:00

8.8 KiB
Raw Blame History

ERP API 统计监控功能完善日志

更新时间

2026-04-30

更新内容

前端功能完善

1. 新增错误详情弹窗组件

  • 文件:/data/hzhub/hzhub-admin/apps/web-antd/src/views/erp/stats/error-detail-modal.vue
  • 功能:
    • 显示完整的错误信息和错误堆栈
    • 显示实际执行的SQL语句参数已替换
    • 显示调用参数JSON格式化
    • 显示客户端IP、用户ID、响应时间等详细信息
    • 使用Collapse组件折叠显示SQL和堆栈
    • 错误堆栈只显示前10行便于快速定位

2. 优化统计主页面

  • 文件:/data/hzhub/hzhub-admin/apps/web-antd/src/views/erp/stats/index.vue

  • 新增功能:

    自动刷新功能

    • 添加自动刷新开关Switch组件
    • 可配置刷新间隔InputNumber范围10-300秒
    • 使用setInterval定时器实现自动刷新
    • 组件卸载时自动清理定时器
    • 监听刷新间隔变化动态调整定时器

    慢查询分析

    • 添加慢查询阈值配置InputNumber范围100-10000ms
    • 统计卡片中显示慢查询次数
    • 响应时间超过阈值时黄色/红色标识
    • 性能优化建议中包含慢查询警告

    性能健康度评估

    • 综合考虑错误率和响应时间计算健康度0-100分
    • 三级健康状态:
      • 80+分:优秀(绿色)
      • 60-80分一般黄色
      • <60分红色
    • 自动生成健康状态描述
    • 使用Progress组件可视化展示

    成功率展示

    • Progress组件显示成功率百分比
    • 显示成功次数/总次数的详细数据
    • 颜色从绿色到深绿色渐变

    响应时间分布

    • 基于平均响应时间和阈值对比计算评分
    • 四级颜色标识:
      • ≥80分绿色优秀
      • ≥60分蓝色良好
      • ≥40分黄色一般
      • <40分红色较差
    • 显示平均/最大响应时间的对比

    缓存状态展示

    • 显示API是否启用Redis缓存
    • 启用时绿色,未启用时灰色
    • 提示缓存可提升性能

    性能优化建议

    • 根据统计数据自动生成4种建议
      • 高错误率警告(错误率>5%
      • 慢查询警告(平均响应时间>阈值)
      • 缓存未启用提示(调用次数>10且未启用
      • 性能优秀提示错误率≤1%且响应时间良好)

    优化错误日志表格

    • 新增"用户ID"列
    • 错误消息过长时截断显示前50字符
    • Tooltip显示完整错误消息
    • 修复fixed字段的TypeScript类型问题
    • 添加横向滚动支持scroll={{ x: 1000 }}
    • 顶部添加错误记录数量提示Alert组件

    优化筛选栏布局

    • 使用Space组件wrap属性支持换行
    • 添加Divider分隔符分隔不同功能区
    • 添加Tooltip提示说明各配置项的作用
    • 新增"慢查询阈值"配置带说明Tooltip

    新增8个统计卡片

    • 总调用次数
    • 成功次数(绿色)
    • 错误次数(红色)
    • 错误率超过5%红色警告)
    • 平均响应时间(超过阈值黄色)
    • 最大响应时间(超过阈值红色)
    • 最小响应时间
    • 慢查询次数(黄色,带阈值说明)

    新增4个性能指标卡片

    • 性能健康度Progress + 描述)
    • 成功率Progress + 详细数据)
    • 响应时间分布Progress + 对比数据)
    • 缓存状态Statistic + 描述)

    优化统计概览Tab

    • 移除"功能正在开发"提示
    • 添加"功能已完善"成功提示
    • 新增性能优化建议卡片

    优化错误日志Tab

    • 顶部添加错误数量提示Alert
    • 错误消息使用Tooltip显示完整内容
    • 详情按钮打开错误详情弹窗

3. 新增样式类

  • .mb-2底部间距8px
  • .mt-4顶部间距16px
  • .metric-desc指标描述样式12px字体灰色

后端功能完善(已完成)

1. API测试功能统计记录

  • 文件:/data/hzhub/hzhub-erp/src/main/java/org/hzhub/erp/service/impl/ErpApiServiceImpl.java
  • 修改:
    • 添加ApiStatsRecorder依赖注入
    • testApi方法新增clientIp和userId参数
    • 执行成功时调用recordSuccess记录统计
    • 执行失败时调用recordError记录统计
    • 修复ApiExecutionResult类型导入

2. API测试接口客户端信息提取

  • 文件:/data/hzhub/hzhub-erp/src/main/java/org/hzhub/erp/controller/ErpApiController.java
  • 修改:
    • testApi方法新增HttpServletRequest参数
    • 实现getClientIp方法支持多代理场景
    • 实现getUserId方法从网关请求头提取
    • 测试环境默认userId为"test-user"

3. 服务接口签名更新

  • 文件:/data/hzhub/hzhub-erp/src/main/java/org/hzhub/erp/service/IErpApiService.java
  • 修改:
    • testApi方法签名新增clientIp和userId参数

测试验证

功能测试结果

  1. API调用统计记录

    • 动态API路径调用正常记录
    • API测试接口调用正常记录
    • 统计字段client_ip, user_id, executed_sql, call_params, response_time全部正确
  2. 统计查询接口

    • 返回正确的统计数据totalCalls, successCalls, errorCalls, avgResponseTime, maxResponseTime, minResponseTime, errorRate
    • 类型转换正确Long/BigDecimal兼容
  3. 错误日志查询

    • 返回错误记录列表
    • 包含所有必要字段
  4. 前端页面访问

统计数据测试

# 测试API ID 1
curl -X POST -H "Content-Type: application/json" \
  -d '{"pageNum":1,"pageSize":20}' \
  http://localhost:8082/erp/api/config/test/1

# 查询统计
curl http://localhost:8082/erp/api/config/stats/1

# 结果
{
  "totalCalls": 6,
  "avgResponseTime": 10,
  "errorRate": 0,
  "successCalls": 6,
  "errorCalls": 0
}

功能对比

原有功能

  • 基础统计卡片6个
  • API选择和筛选
  • 错误日志表格(简单)
  • 简单的进度条显示
  • 手动刷新

新增功能

  • 错误详情弹窗(完整信息)
  • 自动刷新(可配置间隔)
  • 慢查询分析(可配置阈值)
  • 性能健康度评估(综合评分)
  • 多维度性能指标4个综合卡片
  • 性能优化建议(自动生成)
  • 优化错误日志表格新增用户ID列、Tooltip
  • 更多统计指标(慢查询次数、缓存状态)
  • Tooltip提示说明
  • TypeScript类型安全修复

文件清单

前端文件

  • /data/hzhub/hzhub-admin/apps/web-antd/src/views/erp/stats/index.vue - 主页面(已完善)
  • /data/hzhub/hzhub-admin/apps/web-antd/src/views/erp/stats/error-detail-modal.vue - 错误详情弹窗(新增)

后端文件

  • /data/hzhub/hzhub-erp/src/main/java/org/hzhub/erp/service/impl/ErpApiServiceImpl.java - 统计记录(已完善)
  • /data/hzhub/hzhub-erp/src/main/java/org/hzhub/erp/controller/ErpApiController.java - 客户端信息提取(已完善)
  • /data/hzhub/hzhub-erp/src/main/java/org/hzhub/erp/service/IErpApiService.java - 接口签名(已完善)

文档文件

  • /data/hzhub/hzhub-erp/docs/api-stats-feature.md - 功能说明文档(新增)
  • /data/hzhub/hzhub-erp/docs/api-stats-update-log.md - 更新日志(新增)

部署说明

前端部署

前端开发服务器已在运行端口5666代码修改会自动热更新。

后端部署

后端服务已重启端口8082修改已生效。

访问地址

使用建议

  1. 实时监控开启自动刷新设置30秒间隔实时观察API性能
  2. 性能优化:关注健康度评分和优化建议,针对性改进
  3. 错误定位:通过错误详情弹窗快速定位问题根源
  4. 慢查询分析设置合适的阈值识别需要优化的SQL
  5. 缓存优化根据缓存状态提示为高频API启用缓存

后续计划

可扩展功能

  1. 集成ECharts图表库添加
    • 调用趋势折线图
    • 响应时间分布柱状图
    • 错误率变化趋势图
  2. 导出统计数据为CSV/Excel
  3. 配置告警阈值,超过阈值发送通知
  4. 多API性能对比分析
  5. 缓存命中率统计
  6. 慢查询日志详情展示

数据留存优化

  • 添加统计数据定时清理机制
  • 配置数据保留时长
  • 添加数据归档功能

总结

本次完善大幅提升了ERP API统计监控功能的实用性和用户体验

  • 从基础统计展示升级为多维度性能分析
  • 添加了自动化监控功能(自动刷新)
  • 提供了智能化的优化建议
  • 完善了错误定位功能(详细弹窗)
  • 增强了数据可视化(健康度、成功率、响应时间分布)

所有功能都已测试验证,可以正常使用。前端页面访问地址:http://192.168.120.60:5666/erp/stats