2011-11-08 11 views
9

我在log4j配置多個追加程序,我想知道是否有可能一旦定義佈局和轉換模式爲所有這些的。 也就是說我有的Log4j:如何定義一個共同的佈局和ConversionPattern多個附加目的地

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 

,我想知道我是否以及如何可以定義只有一次每個附加器的配置的最後兩行。

回答

3

更深入地檢查在log4j中配置解析的實現,我意識到它只是簡單的解析,並且沒有實現類似功能的引用。 所以,僅僅複製:)

16

不知道這是你想要什麼,但使用下面您可以在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} 

問候,

+0

有趣的建議,甚至儘管它不允許僅定義其他參數一次 – cdarwin

相關問題