Propiedades de Log4j
Comunidad, les dejo ahi un pequeño archivo de log4j.properties que pues un dia me puse a hacer, espero y a alguien le sirva, a mi me sirvio para comprender que contiene cada linea del archivo, ya el utilizarlo es mas sencillo, por mientras solo les pongo el archivito. saludos.
##########################################################
#### Propiedades del log4j ####
##########################################################
##########################################################
#Configuracion del nivel principal de la jerarquía(OFF,FATAL,ERROR,WARN,INFO,DEBUG ó ALL) y Appener's.
log4j.rootLogger=DEBUG, salidaArchivo, salidaConsola
#######################
# Log de registro #
#######################
#Indicamos el tipo de almacenamiento.
#FileAppender - Simple archivo.
#RollingFileAppender - Es un log de almacenamiento dinamico(cuando se llenan un archivo, lo amacena con ext 1).
#DailyRollingFileAppender - Crea un archivo diario o por fechas.
#SocketAppender - Servidor remoto donde almacenar registros.
#SMTPAppender - Dirección de correo electrónico.
#JDBCAppender - Base de datos.
log4j.appender.salidaArchivo=org.apache.log4j.RollingFileAppender
#Hubicacion del archivo.
#ruta completa(=C:/Logs/Desarrollo.log).
#ruta relativa a este archivo(=Desarrollo.log).
#ruta relativa a un fichero (=${catalina.base}/logs/Desarrollo.log).
log4j.appender.salidaArchivo.file=C:/Logs/Desarrollo.log
#Tamaño del archivo (Default 10MB).
log4j.appender.salidaArchivo.maxFileSize=3MB
#Numero de archivos de almacenamiento(Default 1).
log4j.appender.salidaArchivo.maxBackupIndex=3
#Formato.
#SimpleLayout - Formato simple.
#PatternLayout - Se dan patrones de salida.
log4j.appender.salidaArchivo.layout=org.apache.log4j.PatternLayout
#Patrones.
#%F: Nombre del fichero. (Operación muy costosa).
#%L: Número de línea. (Operación muy costosa).
#%d{ISO8601}: Fecha en el estándar ISO 8601 (2003-01-12 17:26:30,234) DEFAULT %d.
#%d{HH:mm:ss,SSS}: Fecha con la misma sintaxis del SimpleDateFormat.
#%d{dd MMM yyyy HH:mm:ss,SSS}
#%d{ABSOLUTE}
#%r: Milisegundos desde que comenzó el programa.
#%t: Hilo que llamo al Logger.
#%p: Prioridad del mensaje.
#%c: Categoria del mensaje.
#%C{1}: Clase donde esta el Logger.
#%m%n: Retorno de linea y salto de linea.
#%x: NDC (Nested Diagnostic Context o Contexto de Diagnostico Anidado) asociado al hilo que llamo al Logger.
#%X:MDC (Mapped Diagnostic Context o Contexto de Diagnostico Mapeado) asociado al hilo que llamo al Logger.
#%%: Muestra el caracter "%".
log4j.appender.salidaArchivo.layout.ConversionPattern=%d [%t] %-5p %c (%F:%L) - %m%n
#######################
# Log de consola #
#######################
log4j.appender.salidaConsola=org.apache.log4j.ConsoleAppender
log4j.appender.salidaConsola.layout=org.apache.log4j.PatternLayout
log4j.appender.salidaConsola.layout.ConversionPattern=%d %-5p %c (%F:%L) - %m%n
#############################
# Bibliografia #
#############################
#Formato.
#http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/PatternLayout.html
#Otros.
#http://www.blogjava.net/zhaochengming/archive/2007/08/13/136491.html
#http://wenku.baidu.com/view/a3d809d8ce2f0066f53322df.html
#http://logging.apache.org/log4j/1.2/manual.html
#http://es.wikipedia.org/wiki/Log4j
#http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/RollingFileAppender.html
#http://www.javahispano.org/contenidos/es/sistemas_de_trazas/
#http://www.javahispano.org/forum/j2ee/es/log4j_y_dailyrollingfileappender/
- bimboso_d's blog
- Inicie sesión o regístrese para enviar comentarios
Comentarios
Mi Log4j
Que tal amigo, me parece muy buena la info que nos compartes, pude hacer unas modificaciones a mi log (bastante sencillo) y también lo comparto para alguien que le pudiera servir.
XML
También acepta una configuración en XML en vez de properties, donde se pueden configurar más cosas de los appenders y loggers. Yo lo tuve que usar para el AsyncAppender porque ese no se puede configurar en el properties, sólo por XML (y no acepta algunos atributos de formato como el %c o %C, aunque sí acepta el %t).
Fuera de tiempo...
Aunque este post tiene algo de tiempo, yo les paso mi archivo de configuración de logback.xml
<configuration debug="true">
<appender name="fichero" class="ch.qos.logback.core.rolling.RollingFileAppender">
<File>/La/ruta/al/archivo.log</File>
<Append>true</Append>
<encoder>
<Pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</Pattern>
</encoder>
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>INFO</level>
</filter>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>/La/ruta/al/archivo.%d{yyyy-MM-dd}.log</fileNamePattern>
<maxHistory>30</maxHistory>
</rollingPolicy>
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<MaxFileSize>300KB</MaxFileSize>
</triggeringPolicy>
</appender>
<appender name="consola" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<Pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</Pattern>
</encoder>
</appender>
<logger name="el.nombre.del.package." level="DEBUG"/>
<root level="INFO">
<appender-ref ref="consola"/>
<appender-ref ref="fichero"/>
</root>
</configuration>
Los nombres de "consola" y "fichero" se pueden cambiar por STDOUT y FILE respectivamente, pues, creo que me hacen falta un buen de opciones que contiene esa librería, pero por el momento no he tenido la necesidad de leer más, sólo adecué el archivo para que la salida se viera semejante al log4j.
Buen ejemplo
Gracias
Bug en DailyRollingFileAppender
Si estás usando log4j 1.x, te recomiendo que uses la clase
org.apache.log4j.rolling.RollingFileAppender
en lugar deorg.apache.log4j.DailyRollingFileAppender
porque puedes perder mensajes con esta última (Bug 43374).Y en el javadoc de la misma:
Notas
Para utilizar la clase
org.apache.log4j.rolling.RollingFileAppender
, necesitarás agregar el JAR correspondiente (apache-log4j-extras-1.2.17.jar).~~~