log4j分文件输出不同级别的日志

src同级创建并设置log4j.properties

#log4j中有五级logger:

#FATAL 0 < #ERROR 3 < #WARN 4 <  #INFO 6 < #DEBUG 7

#常用设置级别:debug>info>error

#debug:显示debug、info、error

#info:显示info、error

#error:只error

实例:(将error、info、debug级别分别输出到不同文件)

log4j.rootLogger=debug,stdout,infolog,errorLog,debuglog

#info

log4j.logger.infolog = info,infolog

log4j.appender.infolog.Append=true

log4j.appender.infolog.Threshold =info

log4j.appender.infolog.encoding=utf-8

log4j.appender.infolog=org.apache.log4j.DailyRollingFileAppender

log4j.appender.infolog.File=./ismslog/isms.info.B.log

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

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

#error

log4j.logger.errorLog = error,errorLog

log4j.appender.errorLog.Append=true

log4j.appender.errorLog.Threshold=error

log4j.appender.errorLog.encoding=utf-8

log4j.appender.errorLog=org.apache.log4j.DailyRollingFileAppender

log4j.appender.errorLog.File=./ismslog/isms.error.B.log

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

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

#debug

log4j.logger.debuglog = debug,debuglog

log4j.appender.debuglog.Append=true

log4j.appender.debuglog.Threshold=debug

log4j.appender.debuglog.encoding=utf-8

log4j.appender.debuglog=org.apache.log4j.DailyRollingFileAppender

log4j.appender.debuglog.File=./ismslog/isms.debug.B.log

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

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

#stdout

log4j.appender.stdout=org.apache.log4j.ConsoleAppender

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

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

#ibatis config

log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=debug

log4j.logger.com.ibatis.common.jdbc.ScriptRunner=debug

log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=debug

log4j.logger.java.sql.Connection=debug

log4j.logger.java.sql.Statement=debug

log4j.logger.java.sql.PreparedStatement=debug

参考文档:

配置根Logger,其语法为:

log4j.rootLogger = [ level ] , appenderName, appenderName, ...

level 是日志记录的优先级

appenderName就是指定日志信息输出到哪个地方,可以同时指定多个输出目的地。

配置日志信息输出目的地Appender,其语法为:

log4j.appender.appenderName = fully.qualified.name.of.appender.class

log4j.appender.appenderName.option1 = value1

...

log4j.appender.appenderName.option = valueN

Log4j提供的appender有以下几种:

org.apache.log4j.ConsoleAppender(控制台),

org.apache.log4j.FileAppender(文件),

org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件),

org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件),

org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)

配置日志信息的格式(布局),其语法为:

log4j.appender.appenderName.layout = fully.qualified.name.of.layout.class

log4j.appender.appenderName.layout.option1 = value1

....

log4j.appender.appenderName.layout.option = valueN

Log4j提供的layout有以下几种:

org.apache.log4j.HTMLLayout(以HTML表格形式布局),

org.apache.log4j.PatternLayout(可以灵活地指定布局模式),

org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),

org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)

你可能感兴趣的:(log4j分文件输出不同级别的日志)