Log4j有三个主要的组件:伐木工(记录器),输出源(输出源)和布局(布局)。这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出。综合使用这三个组件可以轻松地记录信息的类型和级别,并可以在运行时控制日志输出的样式和位置。
伐木工组件在此系统中被分为五个级别:调试信息,警告说,错误和致命的。这五个级别是有顺序的,调试& lt;信息& lt;警告& lt;错误& lt;致命的,分别用来指定这条日志信息的重要程度,明白这一点很重要,Log4j有一个规则:只输出级别不低于设定级别的日志信息,假设伐木工级别设定为信息,则信息,警告说,错误和致命级别的日志信息都会输出,而级别比信息低的调试则不会输出。
禁用和使用日志请求只是Log4j的基本功能,Log4j日志系统还提供许多强大的功能,比如允许把日志输出到不同的地方,如控制台(控制台),文件(文件)等,可以根据天数或者文件大小产生新的文件,可以以流的形式发送到其它地方等等。
<强>常使用的类如下:强>
org.apache.log4j。ConsoleAppender(控制台)
org.apache.log4j。FileAppender(文件)
org.apache.log4j。DailyRollingFileAppender(每天产生一个日志文件)
org.apache.log4j。RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)
org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)
<>强配置模式:强>
log4j.appender。appenderName=类名 log4j.appender.appenderName。Option1=value1 … log4j.appender.appenderName。OptionN=家
有时用户希望根据自己的喜好格式化自己的日志输出,Log4j可以在输出源的后面附加布局来完成这个功能.Layouts提供四种日志输出样式,如根据HTML样式,自由指定样式,包含日志级别与信息的样式和包含日志时间,线程,类别等信息的样式。
<强>常使用的类如下:强>
org.apache.log4j。HTMLLayout(以HTML表格形式布局)
org.apache.log4j。PatternLayout(可以灵活地指定布局模式)
org.apache.log4j。SimpleLayout(包含日志信息的级别和信息字符串)
org.apache.log4j.TTCCLayout(包含日志产生的时间,线程,类别等信息)
<>强配置模式:强>
log4j.appender.appenderName。布局=类名 log4j.appender.appenderName.layout。Option1=value1 … log4j.appender.appenderName.layout。OptionN=家 >之前
在实际应用中,要使Log4j在系统中运行须事先设定配置文件。配置文件事实上也就是对记录器,Appender及布局进行相应设定.Log4j支持两种配置文件格式,一种是XML格式的文件,一种是属性属性文件。下面以属性属性文件为例介绍Log4j . properties的配置。
log4j。rootLogger=(水平),appenderName1、appenderName2…
log4j.additivity.org.apache=false:表示记录器不会在父记录器的appender里输出,默认为真的。
水平:设定日志记录的最低级别,可设的值有,致命的错误、警告、信息,调试,所有或者自定义的级别,Log4j建议只使用中间四个级别。通过在这里设定级别,您可以控制应用程序中相应级别的日志信息的开关,比如在这里设定了信息级别,则应用程序中所有调试级别的日志信息将不会被打印出来。
appenderName:就是指定日志信息要输出到哪里。可以同时指定多个输出目的地,用逗号隔开。
例如:log4j.rootLogger=信息,A1, B2, C3
log4j.appender。appenderName=className
appenderName:自定义appderName,在log4j.rootLogger设置中使用;<>强名称:可设值如下:强>
(1) org.apache.log4j。ConsoleAppender(控制台)
(2)org.apache.log4j。FileAppender(文件)
(3)org.apache.log4j。DailyRollingFileAppender(每天产生一个日志文件)
(4)org.apache.log4j。RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)
(5)org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)<强> (1)ConsoleAppender选项:强>
阈值=警告:指定日志信息的最低输出级别,默认为调试。
ImmediateFlush=true:表示所有消息都会被立即输出,设为假则不输出,默认值是真的。
目标:=system . err默认值是system . out。Log4j_配置方法(全面讲解)