提交 1621125c 编写于 作者: R Rossen Stoyanchev

@ExceptionHandler methods logs at DEBUG level again

Issue: SPR-17383
上级 a0b42a3d
......@@ -135,11 +135,18 @@ public abstract class AbstractHandlerExceptionResolver implements HandlerExcepti
prepareResponse(ex, response);
ModelAndView result = doResolveException(request, response, handler, ex);
if (result != null) {
// Print warn message when warn logger is not enabled...
if (logger.isWarnEnabled() && (this.warnLogger == null || !this.warnLogger.isWarnEnabled())) {
logger.warn("Resolved [" + ex + "]" + (result.isEmpty() ? "" : " to " + result));
// Print warn or debug message when warn logger is not enabled...
if (this.warnLogger == null || !this.warnLogger.isWarnEnabled()) {
if (!useWarnLevelWhenWarnLoggerNotEnabled()) {
if (logger.isDebugEnabled()) {
logger.debug("Resolved [" + ex + "]" + (result.isEmpty() ? "" : " to " + result));
}
}
else if (logger.isWarnEnabled()) {
logger.warn("Resolved [" + ex + "]" + (result.isEmpty() ? "" : " to " + result));
}
}
// warnLogger with full stack trace (requires explicit config)
// Log with warnLogger (requires explicit config)
logException(ex, request);
}
return result;
......@@ -179,6 +186,16 @@ public abstract class AbstractHandlerExceptionResolver implements HandlerExcepti
return (this.mappedHandlers == null && this.mappedHandlerClasses == null);
}
/**
* Whether to log warn level messages (return value "true") or debug level
* messages (return value "false") through the regular class logger when
* {@link #setWarnLogCategory warn logging} is not activated.
* <p>By default returns "true".
*/
protected boolean useWarnLevelWhenWarnLoggerNotEnabled() {
return true;
}
/**
* Log the given exception at warn level, provided that warn logging has been
* activated through the {@link #setWarnLogCategory "warnLogCategory"} property.
......
......@@ -491,4 +491,10 @@ public class ExceptionHandlerExceptionResolver extends AbstractHandlerMethodExce
return null;
}
@Override
protected boolean useWarnLevelWhenWarnLoggerNotEnabled() {
// Use DEBUG level
return false;
}
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册