这是我的设置:
- WEBAPP:Spring MVC Web 应用程序
- LIBRARY:我在 WEBAPP 中使用的内部库
在 WEBAPP 中,我在“基本”控制器中定义了一个异常处理程序,如下所示:
@ExceptionHandler(Exception.class)
@ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR)
public final ModelAndView handleException(
final Exception e,
final HttpServletRequest request)
{
// some stuff...
LOG.error(message, e);
// some more stuff...
}
其中 LOG 是我在类中静态定义的 log4j 记录器。
在 LIBRARY 中,我将任何异常记录为错误,然后将它们重新抛出给客户端。在这种情况下,客户端是WEBAPP。现在,如您所见,每次发生错误时,我都有 2 个日志条目!一个用于 LIBRARY,一个用于 WEBAPP。
我不想删除 WEBAPP 的异常处理程序,因为异常可以在 LIBRARY 之外引发,我想在向 WEBAPP 客户端返回 500 之前记录它们。
有什么建议么?