2014-02-26 43 views

回答

0

也許在這個文章中的log4j.properties會幫助你尋找你在找什麼對於。 http://ta.cnci.org/more-about-java/35-java-blogs/238-dailyfileappender,也許你可以使用我後面寫的DailyFileAppender.java。 的想法很簡單,它是在4個部分:

  1. 將log4j.rootCategory,包括你的 「FILE DEF」
  2. 定義你的 「FILE DEF」 如log4j.appender.SOADAILY
  3. 告訴Logger將其過濾爲「FILE DEF」,如下所示:log4j.logger.com.incresearch.soa.db = DEBUG,TDLDAILY
  4. 告訴Logger不要從其他地方刪除:log4j.additivity.org.cnci.tdl =假

但是,這裏是N實施例:這裏

 

    #------------------------------------------------------------------------------ 
    # Default log4j.properties file. This should be in the LocalFiles folder 
    # 
    # Possible Log Levels: 
    #  FATAL, ERROR, WARN, INFO, DEBUG 
    # 
    log4j.rootCategory=DEBUG, SOADAILY, TDLDAILY 
    log4j.logger.org.apache=ERROR 

    #------------------------------------------------------------------------------ 
    # The following properties configure the Daily Rolling File appender. 
    # For SOA components, mostly from org.cnci.soa.* packages 
    #------------------------------------------------------------------------------ 
    log4j.appender.SOADAILY = org.cnci.util.DailyFileAppender 
    log4j.appender.SOADAILY.File = logs/SOAServices.log 
    log4j.appender.SOADAILY.MaxLogs = 30 
    log4j.appender.SOADAILY.Append = true 
    log4j.appender.SOADAILY.DatePattern = '.'yyy-MM-dd 
    log4j.appender.SOADAILY.layout = org.apache.log4j.PatternLayout 
    log4j.appender.SOADAILY.layout.ConversionPattern = %d %5p %c{1}:%L - %m%n 

    #------------------------------------------------------------------------------ 
    # The following properties configure the Daily Rolling File appender for TDL. 
    # For TDL applications, mostly from org.cnci.tdl.* packages and jboss seams, richfaces... 
    #------------------------------------------------------------------------------ 
    log4j.appender.TDLDAILY = org.apache.log4j.FileAppender 
    log4j.appender.TDLDAILY.File = logs/TDLServices.log 
    log4j.appender.TDLDAILY.MaxLogs = 30 
    log4j.appender.TDLDAILY.Append = true 
    log4j.appender.TDLDAILY.DatePattern = '.'yyy-MM-dd 
    log4j.appender.TDLDAILY.layout = org.apache.log4j.PatternLayout 
    log4j.appender.TDLDAILY.layout.ConversionPattern = %d %5p %c{1}:%L - %m%n 


    # Extracting all Adapter logging into it own file 
    log4j.logger.org.cnci.soa=DEBUG, SOADAILY 
    log4j.additivity.org.cnci.soa=false 
    log4j.logger.com.hazelcast=ERROR, SOADAILY 
    log4j.additivity.com.hazelcast=false 
    log4j.logger.org.opensaml=ERROR, SOADAILY 
    log4j.additivity.org.opensaml=false 

    # Extracting all DB (TDL) logging into it own file 
    log4j.logger.com.incresearch.soa.db=DEBUG, TDLDAILY 
    log4j.additivity.org.cnci.tdl=false 
    log4j.logger.org.jboss.seam=ERROR, DAILY 
    log4j.additivity.org.jboss.seam=false 
    log4j.logger.org.richfaces=ERROR, DAILY 
    log4j.additivity.org.richfaces=false 
    log4j.logger.org.ajax4jsf=ERROR, DAILY 
    log4j.additivity.org.ajax4jsf=false 

+1

感謝您的建議......但是,我想爲不同的模塊實現不同的日誌位置......它只有在當前日誌大小超過時創建新的日誌位置時纔有用......我對使用相同的日誌名創建新的,但是......選擇不同的日誌位置...從單個類 – user3351521

+0

使用RollingFileAppender並查看得到了什麼。 – hd1

0

看看我的回答是:Log4j to write json array to disk

它顯示瞭如何發送com.foo.bar日誌安慰,com。示例,以一個文件的appender;你可以混合搭配 - 實質上是在log4j.com之後的軟件包名稱。部分將爲該類的子樹創建一個新的記錄器;如果在後代包中需要更改位置(請記住,appender默認爲加法),則必須將「inherit」設置爲「false」。

+0

thak你不是這樣的,實際上我必須通過動態選擇日誌文件來實現基於不同應用程序使用單一日誌記錄配置登錄到多個日誌文件中的日誌。使用單一的日誌記錄類 – user3351521

相關問題