log4j3个主要组件:Loggers(记录器)、Appenders(输出源)、Layouts(布局)
可以简单理解为:日志类别、日志要输出的地方、日志以何种形式输出。
1)Loggers组件
Loggers组件在系统中被分为5个级别:debug / info / warn / error / fatal
级别低被屏蔽掉,级别高可以启动
2)Appenders组件
org.apache.log4j.ConsoleAppender(控制台)
org.apache.log4j.FileAppender(文件)
org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)
org.apache.log4j.RollingFileAppender(文件大小达到指定尺寸的时候产生一个新的文件)
org.apache.log4j.WriterAppender (将日志信息以流格式发送到任意指定的地方)
log4j.appender.<appenderName>=xx
log4j.appender.<appenderName>.<optionxx>=valuexx
3)Layouts组件
log4j.appender.<appenderName>.layout=xx
log4j.appender.<appenderName>.layout.<layName>=xx
log4j提供了4种日志输出样式:根据Html样式,自由指定样式,包含日志级别与信息的样式,包含日志时间、线程、类别等信息的样式
org.apache.log4j.HTMLLayout
org.apache.log4j.PatternLayout (自由样式)
org.apache.log4j.SimpleLayout (包含日志级别与信息的样式)
org.apache.log4j.TTCCLayout (包含日志时间、线程、类别等信息的样式)
/* 配置根Logger */
log4j.rootLogger=level
level为日志的优先级,分别是off / fatal / error / warn / info / debug / all / 或者自定义级别
log4j建议只是用4个级别:error / warn / info / debug, appenderName1,...
通过在这里定义的级别,可以控制到应用程序中相应级别的日志信息开关。
appenderName:指定日志信息输出到哪个地方,可以同时指定多个输出目的。