下面的异常处理程序对我的所有控制器都通用,除了在处理异常后我需要从 AbstractHandlerExceptionResolver 类中禁用 WARN 日志外,它工作正常。使用 Spring-webmvc 5x 版本。@ControllerAdvicepublic class AllExceptionHandler{ @ExceptionHandler(SomeCustomException.class) @ResponseStatus(HttpStatus.BAD_REQUEST) public void exceptionHandler() { }}这是我试图避免的生成的日志:2019 年 2 月 20 日 15:22:54,896 警告 [http-nio-8080-exec-1] (AbstractHandlerExceptionResolver.java:140) - 已解决 [com.rasa.rrt.ste.controller.SomeCustomException]我没有使用 Spring Boot。试图用ExceptionHandlerExceptionResolver扩展上面的AllExceptionHandler类, 并在AllExceptionHandler构造函数中调用warnLogCategory(null),但是它抛出了 NullPointerException。另外,我在谷歌上看到设置这个属性“spring.mvc.log-resolved-exception=false”来禁用警告,但不确定在哪里/如何设置它。
2 回答

喵喵时光机
TA贡献1846条经验 获得超7个赞
您提到spring.mvc.log-resolved-exception=false
了一个可能的解决方案:
另外,我在谷歌上看到设置这个属性“spring.mvc.log-resolved-exception=false”来禁用警告,但不确定在哪里/如何设置它。
该spring.mvc.log-resolved-exception
属性是Spring Boot 属性,将使用标准 Spring Boot外部化配置机制进行设置。启用该属性会导致 Spring Boot 配置HandlerExceptionResolver
bean 以记录异常,否则它们不会。
是否启用由“HandlerExceptionResolver”解决的异常的警告日志记录,“DefaultHandlerExceptionResolver”除外。
由于您已声明您没有使用 Spring Boot,因此此属性不适用于您的场景。

慕村225694
TA贡献1880条经验 获得超4个赞
您可以在 logback 配置中禁用此警告日志,方法是在我的情况下在以下行中指定“logback-spring.groovy”
logger("org.springframework.web.servlet.mvc.method.annotation.ExceptionHandlerExceptionResolver", ERROR)
添加回答
举报
0/150
提交
取消