diff --git a/src/work/todo/2026-03.md b/src/work/todo/2026-03.md index 2c0c2d8..c7a72f9 100644 --- a/src/work/todo/2026-03.md +++ b/src/work/todo/2026-03.md @@ -15,12 +15,12 @@ title: 3月待办(2026-03) # 待办清单(2026-03) > 最后更新: 2026-03-30 -> 统计: 已完成 12 项、已提交 0 项、待测试 1 项、部分完成 0 项、待确认 1 项、未开始 6 项、已取消 1 项 +> 统计: 已完成 12 项、已提交 0 项、待测试 1 项、部分完成 0 项、待确认 1 项、未开始 7 项、已取消 1 项 ## 清单总览 - 当前优先: 8(待测试)、13(待确认)、14(未开始) -- 本周建议推进: 7、9、14、16、19、21(未开始) +- 本周建议推进: 7、9、14、16、19、21、22(未开始) - 已归档完成: 1、2、3、4、5、10、11、12、15、17、18、20 ## 状态说明 @@ -85,6 +85,34 @@ title: 3月待办(2026-03) - **状态**: 还在设计方案 - **下一步**: 完成方案设计,明确反向联动触发条件、开关灯联动逻辑与菜单权限配置 +### 22. [全部版本] 优化服务调用失败异常反馈 + +- **创建日期**: 2026-03-30 +- **描述**: 优化服务调用失败时的异常反馈机制,在日志中附带详细的错误信息,便于快速定位问题 +- **问题现象**: + - 当前服务调用失败时,日志仅显示"服务不可用 [videodevmng]" + - 缺少具体的错误原因、调用链路、请求参数等关键信息 + - 排查问题时需要额外查看多个日志文件才能定位根因 +- **优化目标**: + 1. 异常日志中增加服务名称、调用方法、请求参数 + 2. 记录完整的异常堆栈和错误原因 + 3. 添加服务状态检查结果(连接池状态、服务健康度等) + 4. 统一异常处理格式,便于日志分析和监控告警 +- **错误日志示例**: + ``` + 2026-03-30 15:54:45.290 [巡视任务-任务下发线程0] ERROR com.sunri.model.patrol.schedule.job.PatrolTaskJob - 任务[549]采集失败,点位:58409 + com.sunri.client.exception.ServiceUnavailableException: 服务不可用 [videodevmng] + at com.sunri.client.pool.ServiceClientPool.getClient(ServiceClientPool.java:484) + at com.sunri.client.ClientManager.getClient(ClientManager.java:130) + at com.sunri.client.mapper.BusClientInterceptor.sendData(BusClientInterceptor.java:151) + ``` +- **下一步**: + 1. 梳理所有服务调用异常处理点 + 2. 设计统一的异常信息格式(包含服务名、方法名、参数、错误原因) + 3. 在 ServiceClientPool、ClientManager、BusClientInterceptor 等关键类中增强异常信息 + 4. 添加服务健康检查日志 + 5. 验证优化后的日志是否能快速定位问题 + --- ## 已完成归档