Ich benutze log4j mit Tomcat. Wenn ich Ausnahmen in meinen JSPs protokolliere, werden Servlets:
private Logger _log = Logger.getLogger(this.getClass());
...
try{...} catch (Exception e) {
_log.error("Error refreshing all prices", e);
}
Ich bekomme nur die erste Zeile der Ausnahme ohne Stacktrace.
17-Feb 17:37:45 ERROR AutoContrib: 175 - Ausnahme beim Veröffentlichen der CSV-Datei: java.lang.ArrayIndexOutOfBoundsException
Überhaupt nicht sehr hilfreich!
Meine Datei log4j.properties (/tomcat/common/classes/log4j.properties) sieht folgendermaßen aus:
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