log4j.properties

在log4j.properties文件中,日志输出是分层的。

根Logger

log4j.rootLogger = [level], appenderName1, appenderName2

level有OFF, FATAL, ERROR, WARN, INFO, DEBUG, ALL或自定义级别

还有一个log4j.rootCategory。Category是Logger的父类,所以建议使用Logger。

输出目的地

log4j.appender.appenderName1 = classInfo

log4j.appender.appenderName1.option1 = value1

log4j.appender.appenderName2.option2 = value2

classInfo指的是log4j提供的appender类,有:

org.apache.log4j.ConsoleAppender --->输出到控制台

org.apache.log4j.FileAppender --->输出到文件

org.apache.log4j.DailyRollingFileAppender -->每天产生一个文件

org.apache.log4j.RollingFileAppender -->文件到达一定大小产生新文件

org.apache.log4j.WriterAppender -->将日志以流的方式发送的任意地方

option属性有:

layout:输出格式

target:输出的目标

输出格式

log4j.appender.appenderName1.layout = classInfo

log4j.appender.appenderName1.layout.option1 = value1

log4j.appender.appenderName1.layout.option2 = value2

classInfo有:

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

org.apache.log4j.PatternLayout        自定义

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

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

PatternLayout自定义模式:

属性:conversionPattern

格式符号:

%c            输出全称类名,如com.xyz.Test

%c{2}       输出xyz.Test

%C          与上面一样

%d           用于输出日期

%d{dd MM yyyy HH:mm:ss,SSS}     日 月 年  时:分:秒,毫秒

%F           文件名

%l           输出位置(类,方法,行)

%L          行号

%m         要记录的信息

%M         方法

%n          换行

%p          优先级,也就是level

%r           距离上一条日志生成的时间

%t           线程名称

%x 

%X 这俩待测

%20c       类名长度少于20,空格左填充

%-20c      类名长度少于20,空格右填充

%.30c      类名长度超过30,左截断

%20.30c  类名长度少于20,空格左填充;长度大于30,左截断

包输出级别

可以设置不同package的日志输出级别

log4j.logger.packageName/className/methodName = level

可以是包名,类名甚至是方法名。但是要用全称。

你可能感兴趣的:(log4j.properties)