log4j 配置文件 常規使用 以及 按照不一樣級別打印到不一樣的文件

日誌記錄器(Logger)的行爲是分等級的。以下表所示:html

分爲OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL或者您定義的級別。Log4j建議只使用四個級別,優先級從高到低分別是 ERROR、WARN、INFO、DEBUG。經過在這裏定義的級別,您能夠控制到應用程序中相應級別的日誌信息的開關。apache

在這裏說明一下,若是  啓動程序 出現app

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.maven

那麼這時候 只要 在 maven 裏面  導入  debug

<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-log4j12</artifactId>
    <version>1.7.21</version>
</dependency>日誌

便可解決,其實能夠忽略掉,對咱們使用 通常的 log4j 功能沒有影響,導入 log4j包便可的。code

下面重點來了,是個人配置文件:htm

log4j.properties 配置文件說明get

io

log4j.appender.encoding = UTF-8

#log4j.rootLogger=INFO,CONSOLE,APPLOG,ERROR,ERRORLOG
#log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
#log4j.appender.CONSOLE.Target=System.out
#log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
#log4j.appender.CONSOLE.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p [%t] %c %x - %m%n

 

 

#log4j.rootLogger=INFO,stdout,debug,info,warn,error
log4j.rootLogger=DEBUG,stdout,debug,info,warn,error 

#將內容 輸出到 控制檯,這裏 在  log4j.rootLogger 裏面必須 加上 INFO 或者 DEBUG 或者 WARN 或者 #ERROR 這些內容, 若是不加上的話, 是不會將內容輸出到 控制檯的,只會輸出到 相應的 文件裏面。

# INFO 表明輸出 INFO級別以上的, DEBUG就是 DEBUG以上的 。。。

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n
 

#輸出 debug 級別以上的內容
log4j.logger.debug=debug
log4j.appender.debug=org.apache.log4j.DailyRollingFileAppender
log4j.appender.debug.layout=org.apache.log4j.PatternLayout
log4j.appender.debug.layout.ConversionPattern=[%-5p] [%d{HH:mm:ss}] %c - %m%n
log4j.appender.debug.datePattern='.'yyyy-MM-dd
log4j.appender.debug.Threshold = DEBUG 
log4j.appender.debug.append=true
log4j.appender.debug.File=/data/logs/debug.log 
 

#輸出 info 級別以上的內容
log4j.logger.info=info
log4j.appender.info=org.apache.log4j.DailyRollingFileAppender
log4j.appender.info.layout=org.apache.log4j.PatternLayout
log4j.appender.info.layout.ConversionPattern=[%-5p] [%d{HH:mm:ss}] %c - %m%n
log4j.appender.info.datePattern='.'yyyy-MM-dd
log4j.appender.info.Threshold = INFO 
log4j.appender.info.append=true
log4j.appender.info.File=/data/logs/info.log

 

#輸出 warn 級別以上的內容

log4j.logger.debug=warn 
log4j.appender.warn=org.apache.log4j.DailyRollingFileAppender
log4j.appender.warn.layout=org.apache.log4j.PatternLayout
log4j.appender.warn.layout.ConversionPattern=[%-5p] [%d{HH:mm:ss}] %c - %m%n
log4j.appender.warn.datePattern='.'yyyy-MM-dd
log4j.appender.warn.Threshold = WARN
log4j.appender.warn.append=true
log4j.appender.warn.File=/data/logs/warn.log

log4j.logger.error=error
log4j.appender.error=org.apache.log4j.DailyRollingFileAppender
log4j.appender.error.layout=org.apache.log4j.PatternLayout
log4j.appender.error.layout.ConversionPattern=[%-5p] [%d{HH:mm:ss}] %c - %m%n
log4j.appender.error.datePattern='.'yyyy-MM-dd
log4j.appender.error.Threshold = ERROR 
log4j.appender.error.append=true
log4j.appender.error.File=/data/logs/error.log

 

這樣就把不一樣日誌級別的內容輸出到 不一樣的 級別文件裏面了。

相關文章
相關標籤/搜索