文章出處

1.不同包的日志,記錄到不同文件

log4j.logger.com.gyoung.service.impl=INFO,Doc

log4j.appender.Doc=com.gyoung.logger.LogAppender
log4j.appender.Doc.Threshold=INFO
log4j.appender.Doc.ImmediateFlush=true
log4j.appender.Doc.Append=true
log4j.appender.Doc.File=logger/doc/document.log
log4j.appender.Doc.DatePattern='.'yyyy-MM-dd
log4j.appender.Doc.layout=org.apache.log4j.PatternLayout
log4j.appender.Doc.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} (%m)%n

這樣命名空間為com.gyoung.service.impl的日志就只會記錄到document.log文件中

2.分日志級別記錄日志,即info,debug,error分別記錄到不同的文件中

新建一個類,繼承DailyRollingFileAppender,重寫isAsSevereAsThreshold

public final class LogAppender extends DailyRollingFileAppender {

    @Override
    public boolean isAsSevereAsThreshold(Priority priority) {
        //只判斷是否相等,而不判斷優先級 123
        return this.getThreshold().equals(priority);
    }
}
#自定義日記處理
log4j.rootLogger=DEBUG,console,ErrorAppender,DebugAppender,InfoAppender,WarnAppender


log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.target=System.out
log4j.appender.console.Threshold=INFO
log4j.appender.console.layout=org.apache.log4j.PatternLayout

log4j.appender.ErrorAppender=com.gyoung.logger.LogAppender
log4j.appender.ErrorAppender.Threshold=ERROR
log4j.appender.ErrorAppender.ImmediateFlush=true
log4j.appender.ErrorAppender.Append=true
log4j.appender.ErrorAppender.File=logger/Error/ErrorAppender.log
log4j.appender.ErrorAppender.DatePattern='.'yyyy-MM-dd
log4j.appender.ErrorAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.ErrorAppender.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} (%m)%n

log4j.appender.DebugAppender=com.gyoung.logger.LogAppender
log4j.appender.DebugAppender.Threshold=DEBUG
log4j.appender.DebugAppender.ImmediateFlush=true
log4j.appender.DebugAppender.Append=true
log4j.appender.DebugAppender.File=logger/Debug/DebugAppender.log
log4j.appender.DebugAppender.DatePattern='.'yyyy-MM-dd
log4j.appender.DebugAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.DebugAppender.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} (%m)%n

log4j.appender.InfoAppender=com.gyoung.logger.LogAppender
log4j.appender.InfoAppender.Threshold=INFO
log4j.appender.InfoAppender.ImmediateFlush=true
log4j.appender.InfoAppender.Append=true
log4j.appender.InfoAppender.File=logger/Info/InfoAppender.log
log4j.appender.InfoAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.InfoAppender.DatePattern='.'yyyy-MM-dd
log4j.appender.InfoAppender.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} (%m)%n

log4j.appender.WarnAppender=ccom.gyoung.logger.LogAppender
log4j.appender.WarnAppender.Threshold=WARN
log4j.appender.WarnAppender.ImmediateFlush=true
log4j.appender.WarnAppender.Append=true
log4j.appender.WarnAppender.File=logger/Warn/WarnAppender.log
log4j.appender.WarnAppender.DatePattern='.'yyyy-MM-dd
log4j.appender.WarnAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.WarnAppender.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} (%m)%n

 ps:web站點的日志文件會在tomcat/bin文件平下


文章列表


不含病毒。www.avast.com
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()