我在将堆栈跟踪打印到我的日志文件时出现问题。 Log4j.properties:log4j截断堆栈跟踪
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=/var/log/app/application.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %c{1} [%p] %m%n
log4j.rootLogger=warn, file
log4j.logger.com.app=info, file
log4j.additivity.com.app=false
当我登录这样的异常在我的课UserGuard.java:
} catch (Exception e) {
log.error("Uncatched error", e);
response.setEntity(new StringRepresentation(" "));
response.setStatus(Status.SERVER_ERROR_INTERNAL);
}
这导致我application.log:
2011-12-28 07:30:03 UserGuard [ERROR] Uncatched error
java.lang.NullPointerException
没有堆栈显示的痕迹。这真的很烦人。 谢谢!
在另一台机器上尝试了相同的pom.xml和相同的log4j.properties,并且正常工作。我应该认为这个问题是我的Java版本吗?
'log4j.additivity.file = false' – 2011-12-28 12:59:48
如果您使用不同的appender,例如ConsoleAppender,问题是否仍然存在?您是否尝试过运行启用了调试输出的log4j,以便您可以查看log4j配置中是否有任何错误? – chrisbunney 2011-12-28 13:02:16
我确实尝试过都没有成功。查看我的编辑 – Gonzalo 2011-12-28 19:36:58