log4j日誌分模塊打印,同時不打印到控制檯上

 

          由於定時刷新程序的啓用,導致catalina.out配置文件中打入大量日誌,致使程序調試困難。

         無法正常查看日誌。所以客戶要求將性能流量配置日誌遷移出catalina.out目錄。修改log4j配置文件後,發現
      分文件中有了日誌輸出,但是,catalina.out文件中依然有性能流量日誌輸出。
          原始配置方法如下:
          
          log4j.logger.com.test.cao.snmpgather = INFO, snmpgather

          log4j.appender.snmpgather=org.apache.log4j.DailyRollingFileAppender

          log4j.appender.snmpgather.File=${catalina.home}/logs/performance/snmpgather_

          log4j.appender.snmpgather.DatePattern= yyyy-MM- dd'.log'

          log4j.appender.snmpgather.layout=org.apache.log4j.PatternLayout

          log4j.appender.snmpgather.layout.ConversionPattern= %-d{yyyy -MM-dd HH:mm:ss,SSS} [%p] [%C.%M:%L] %m%n
 
          後來發現瞭如下方法,則可將日誌從catalina.out工作臺日誌文件中移出,
          log4j.additivity
          現配置文件如下:
          
          log4j.logger.com.test.cao.snmpgather = INFO, snmpgather

          log4j.appender.snmpgather=org.apache.log4j.DailyRollingFileAppender

          log4j.appender.snmpgather.File=${catalina.home}/logs/performance/snmpgather_

          log4j.appender.snmpgather.DatePattern= yyyy-MM- dd'.log'

          log4j.appender.snmpgather.layout=org.apache.log4j.PatternLayout

          log4j.appender.snmpgather.layout.ConversionPattern= %-d{yyyy -MM-dd HH:mm:ss,SSS} [%p] [%C.%M:%L] %m%n
 
	  log4j.additivity.com.linkage.module.liposs.system.cao.snmpgather = false
 
          下面是log4j.additivity解釋:
          log4j.additivity是 子Logger 是否繼承 父Logger 的 輸出源(appender) 的標誌位。
          具體說,默認情況下 子Logger 會繼承 父Logger 的appender,也就是說 子Logger 會在 父Logger 的appender裏輸出。
          若是additivity設爲false,則 子Logger 只會在自己的appender裏輸出,而不會在 父Logger 的appender裏輸出。
          
          由於父log爲:
          
          log4j.rootCategory=, A1 , R

          log4j.appender.A1=org.apache.log4j.ConsoleAppender

          log4j.appender.A1.Threshold=INFO

          log4j.appender.A1.layout=org.apache.log4j.PatternLayout

          log4j.appender.A1.layout.ConversionPattern= %-d{yyyy -MM-dd HH:mm:ss} [%c]-[%p] %m%n

          log4j.appender.R.Threshold=INFO

          log4j.appender.R.MaxFileSize=100KB

          log4j.appender.R.MaxBackupIndex=10

          log4j.appender.R.layout=org.apache.log4j.PatternLayout

          log4j.appender.R.layout.ConversionPattern= %p %t %c - %m%n
 
          所以會打到工作臺中。
          將additivity設爲false則只依賴與自身的配置。

 

發佈了116 篇原創文章 · 獲贊 53 · 訪問量 53萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章