Estoy usando log4j con tomcat. Cuando registro excepciones en mis JSP, servlets:log4j no imprime el stacktrace para las excepciones
private Logger _log = Logger.getLogger(this.getClass());
...
try{...} catch (Exception e) {
_log.error("Error refreshing all prices", e);
}
solo me dan la primera línea de la excepción, sin StackTrace.
No17-Feb 17:37:45 ERROR AutoContrib: 175 - Excepción al publicar el archivo csv: java.lang.ArrayIndexOutOfBoundsException
muy útil en absoluto!
Mi archivo log4j.properties (/tomcat/common/classes/log4j.properties) tiene el siguiente aspecto:
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
Por lo que puedo ver, lo está haciendo todo como debería ser ... debería ver toda la stacktrace en su registro. ¿Qué versión de log4j, Java y Tomcat estás usando? –
Estamos usando tomcat 5.5.17 y log4j-1.2.14 (creo que actualizaremos a tc6 en el futuro cercano, pero no estoy seguro de que eso haga la diferencia) – Ryan