log4j.properties 設置特定包/類按級別輸出到特定文件
比如我們有一個這樣的info和debug輸出級別配置
log4j.rootLogger=INFO,I,D
log4j.appender.I= org.apache.log4j.DailyRollingFileAppender
log4j.appender.I.File= d:/logs/info.log
log4j.appender.I.Append =true
log4j.appender.I.Threshold=INFO
log4j.appender.I.DatePattern=-yyyy-MM-dd'.log'
log4j.appender.I.layout=org.apache.log4j.PatternLayout
log4j.appender.I.layout.ConversionPattern=[%p] [%d{yyyy-MM-dd HH:mm:ss}] %m%n
log4j.appender.D= org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File= d:/logs/debug.log
log4j.appender.D.Append =true
log4j.appender.D.Threshold=DEBUG
log4j.appender.D.DatePattern=-yyyy-MM-dd'.log'
log4j.appender.D.layout=org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern=[%p] [%d{yyyy-MM-dd HH:mm:ss}] %m%n
想要把com.xxx.xxx.XxxClass
類的日誌,將INFO
以上的只輸出到debug.log
文件
加上:
# value的第一個值是這個包/類的輸出日誌級別, 是info級別, 第二個值是輸出到哪些appender中去,上面有兩個,I和D分別代表info和debug的appender
log4j.logger.com.xxx.xxx.XxxClass=INFO,D
不過這裏注意,
# value的第一個值是這個包/類的輸出日誌級別, 是info級別, 第二個值是輸出到哪些appender中去,上面有兩個,I和D分別代表info和debug的appender
log4j.logger.com.xxx.xxx.XxxClass=DEBUG,I,D
無法將 debug級別輸入到info的appender中, 因爲info的
log4j.appender.I.Threshold=INFO
設置了閾值是info