系统开发实践-Spring Cloud 异常封装及传递处理
2017-11-8
| 2024-2-20
字数 1079阅读时长 3 分钟
type
status
date
slug
summary
tags
category
icon
password
AI summary
Last edited time
Feb 20, 2024 04:18 PM

异常体系定义

notion image

异常编码的设计使用

这里采用了精简异常代码设计的形式
ServiceException业务异常, 异常编码默认使用BIZ_ERROR, 异常文字提示根据实际情况抛出, 例如
系统设计上, 会针对业务异常, 日志记录上做 WARN 级别设置
系统异常默认使用SYSTEM_ERROR, 提示系统忙, 请稍后再试, 默认非 ServiceException 的异常, 都归属于系统异常, 需要做告警提示并及时修复
异常类型
默认异常 code
默认异常 message
日志记录级别
ServiceException
BIZ_ERROR
WARN
SystemException
SYSTEM_ERROR
系统忙, 请稍后再试
ERROR

Spring Boot 异常捕捉扩展

spring boot 的 ErrorMvcAutoConfiguration 有参考实现, 我们对其进行扩展, 个性化输出内容
同时配合 spring boot 的 AutoConfiguration 机制, 让我们的 CustomErrorAttributes 生效

Spring Cloud 的 openfeign 异常传递改造

spring cloud 微服务, 我们用的 openfeign 声明式调用, 还需要对异常传递进行扩展, 实现在调用方调用服务时, 能够获取服务提供方抛出的异常
  • Spring Cloud
  • Spring Boot
  • 框架设计
  • Spring Could 尝鲜记录通过 Syncthing 实现多台服务器的数据同步
    Loading...