除了我需要在处理异常后从AbstractHandlerExceptionResolver类禁用WARN日志之外,下面的异常处理程序对我的所有控制器都是通用的。使用Spring-webmvc 5x版本。
@ControllerAdvice
public class AllExceptionHandler{
@ExceptionHandler(SomeCustomException.class)
@ResponseStatus(HttpStatus.BAD_REQUEST)
public void exceptionHandler() {
}
}
这是我试图避免生成的日志:
02-20-2019 15:22:5496 WARN [http-nio-8080-exec-1](AbstractHandlerExceptionResolver.java:140) - 已解决[com.rasa.rrt.ste.controller.SomeCustomException]
我没有使用Spring Boot。
尝试使用ExceptionHandlerExceptionResolver扩展上述AllExceptionHandler类并在AllExceptionHandler构造函数中调用warnLogCategory(null),但它会抛出NullPointerException。
此外,我在google上看到设置此属性“spring.mvc.log-resolved-exception = false”以禁用警告,但不确定在何处/如何设置它。
您可以在logback配置中禁用此警告日志,方法是在我的情况下在'logback-spring.groovy'中指定以下行
logger("org.springframework.web.servlet.mvc.method.annotation.ExceptionHandlerExceptionResolver", ERROR)