我使用的是tomcat的log4j。当我在JSP中记录异常时,servlets:log4j不打印例外的堆栈跟踪
private Logger _log = Logger.getLogger(this.getClass());
...
try{...} catch (Exception e) {
_log.error("Error refreshing all prices", e);
}
我只得到异常的第一行,没有堆栈跟踪。
17月17时37分45秒ERROR AutoContrib:175 - 异常而发布CSV文件: java.lang.ArrayIndexOutOfBoundsException
不是非常有帮助了!
我log4j.properties文件(/tomcat/common/classes/log4j.properties)看起来是这样的:
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{dd-MMM HH:mm:ss} %5p %c{1}:%L - %m%n
log4j.appender.stdout.threshold=info
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.maxFileSize=5000KB
log4j.appender.file.maxBackupIndex=10
log4j.appender.file.File=${catalina.home}/logs/web.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{dd-MMM HH:mm:ss} %5p %c{1}:%L - %m%n
log4j.appender.file.threshold=info
log4j.rootLogger=debug, stdout, file
据我所见,你所做的一切都应该完成......你应该看到你的日志中的所有堆栈跟踪。你正在使用哪个版本的log4j,Java和Tomcat? – 2010-02-19 09:03:29
我们使用的是tomcat 5.5.17和log4j-1.2.14(我想我们会在不久的将来升级到tc6,但我不确定这会有什么区别?) – Ryan 2010-02-19 09:05:37