SpringBoot 提供 @RestControllerAdvice 注解,使用该注解表示开启了全局异常的捕获,我们只需在自定义一个方法使用 @ExceptionHandler 注解然后定义捕获异常的类型即可对这些捕获的异常进行统一的处理。

GlobalBizExceptionHandler

关键配置说明

  1. 使用 @RestControllerAdvice 注解开启全局异常捕获
  2. 使用 @ExceptionHandler 注解处理具体的异常类型
  3. 使用 Tracer.trace(e) 把异常信息交给 sentinel 进行记录,作为熔断等的重要指标

确保正确配置 Tracer.trace(e) 非常重要,这是实现熔断等功能的必要指标。

配置示例

  1. 使用 @RestControllerAdvice 注解开启全局异常捕获
  2. 使用 @ExceptionHandler 注解处理具体的异常类型
  3. 使用 Tracer.trace(e) 把异常信息交给 sentinel 进行记录,作为熔断等的重要指标
@RestControllerAdvice
public class GlobalBizExceptionHandler {
    @ExceptionHandler(Exception.class)
    public R handleException(Exception e) {
        Tracer.trace(e);
        return R.failed(e.getMessage());
    }
}

配置要点

SpringBoot 提供 @RestControllerAdvice 注解,使用该注解表示开启了全局异常的捕获,我们只需在自定义一个方法使用 @ExceptionHandler 注解然后定义捕获异常的类型即可对这些捕获的异常进行统一的处理。

主要配置步骤:

  1. 使用 @RestControllerAdvice 开启全局异常捕获
  2. 使用 @ExceptionHandler 处理具体的异常类型
  3. 使用 Tracer.trace(e) 把异常信息交给 sentinel 进行记录,作为熔断等的重要指标

♥️ 获取支持

遇到问题?

如果您在使用过程中遇到任何问题、有功能建议或需求,请点击此卡片前往 Gitee 仓库提交 Issue。