2011-11-08 11 views
9

Tengo múltiples anexos en mi configuración log4j, y me preguntaba si sería posible definir el diseño y el patrón de conversión para todos ellos. Es decir TengoLog4j: cómo definir un diseño común y ConversionPattern para múltiples appenders

log4j.appender.CA=org.apache.log4j.ConsoleAppender 
log4j.appender.CA.layout=org.apache.log4j.PatternLayout 
log4j.appender.CA.layout.ConversionPattern=%d{yyyy/MM/dd HH:mm:ss} %-5p %c %x - %m%n 

log4j.appender.FA=org.apache.log4j.RollingFileAppender 
log4j.appender.FA.MaxBackupIndex=0 
log4j.appender.FA.MaxFileSize=100Mb 
log4j.appender.FA.File=log/my.log 
log4j.appender.FA.layout=org.apache.log4j.PatternLayout 
log4j.appender.FA.layout.ConversionPattern=%d{yyyy/MM/dd HH:mm:ss} %-5p %c %x - %m%n 

y me gustaría saber si y cómo podría definir las dos últimas filas de configuración de cada appender sólo una vez.

Respuesta

3

Comprobando más a fondo la implementación del análisis de configuración en log4j me he dado cuenta de que es solo un análisis simple y no se implementan características similares a la referencia. lo tanto, sólo duplicar :)

16

No estoy seguro si es exactamente lo que quiere, pero utilizando la siguiente se puede definir el diseño en lugar de 1:

PATTERN = %-4r [%t] %-5p %c %x - %m%n 

log4j.rootLogger=info, A 
log4j.logger.FILE = info, FILE 

log4j.appender.A=org.apache.log4j.ConsoleAppender 
log4j.appender.A.layout=org.apache.log4j.PatternLayout 
log4j.appender.A.layout.ConversionPattern=${PATTERN} 

log4j.appender.FILE=org.apache.log4j.RollingFileAppender 
log4j.appender.FILE.File=log.log 
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout 
log4j.appender.FILE.layout.ConversionPattern=${PATTERN} 

Saludos,

+0

sugerencia interesante, incluso aunque no permite definir los otros parámetros solo una vez – cdarwin

Cuestiones relacionadas