2013-09-23 45 views
0
# Root logger option 
log4j.rootLogger=ALL, stdout, A1 
log4j.logger.org.apache.jsp=ALL, stdout, A1 

# Direct log messages to stdout 
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{yyyy-MM-dd HH:mm:ss} [%p] [%c:%L] - %m%n 

# LOG4J daily rolling log files configuration 
log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender 
log4j.appender.A1.File=logs/file.log 
log4j.appender.A1.DatePattern='.'yyyy-MM-dd 
log4j.appender.A1.layout=org.apache.log4j.PatternLayout 
log4j.appender.A1.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} [%p] [%c:%L] - %m%n 

大多數時候我定義了幾個appender ......一個用於控制檯,另一個用於文件。但是大部分時間我都使用相同的佈局來輸出。 有沒有一種方法來定義默認的?有沒有辦法定義默認佈局?

這樣的事情?

log4j.appender.layout=org.apache.log4j.PatternLayout 
log4j.appender.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} [%p] [%c:%L] - %m%n
+1

做這是否幫助? http://stackoverflow.com/questions/8054019/log4jhow-to-define-a-common-layout-and-conversionpattern-for-multiple-appenders – SrikanthLingala

+0

@SrikanthLingala它有幫助!謝謝... – Manu

回答

0
# Root logger option 
log4j.rootLogger=ALL, stdout, A1 
log4j.logger.org.apache.jsp=ALL, stdout, A1 

PATTERN=%d{yyyy-MM-dd HH:mm:ss} [%p] %l - %m%n 

# Direct log messages to stdout 
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=${PATTERN} 

# LOG4J daily rolling log files configuration 
log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender 
log4j.appender.A1.File=logs/file.log 
log4j.appender.A1.DatePattern='.'yyyy-MM-dd 
log4j.appender.A1.layout=org.apache.log4j.PatternLayout 
log4j.appender.A1.layout.ConversionPattern=${PATTERN} 

看來,要做到這一點的唯一方法是設置一個變量,因爲我與PATTERN=%d{yyyy-MM-dd HH:mm:ss} [%p] %l - %m%n

相關問題