配置步骤:
首先需要jar包 log4j-1.2.17.jar。
然后在classpath根目录下创建配置文件 log4j.properties。
编写完配置文件之后,项目中的日志就会自动输出了。
Log4j的配置主要包括三个部分:Logger(记录器),Appender(输出源)和Layout(布局)
1. Logger
rootLogger,对整个项目的日志输出进行配置,格式:
log4j.rootLogger = [level],appender1,appender2...
模块Logger,对指定模块日志输出进行配置,格式:
log4j.logger.com.user.login = [level] appender5...
level日志级别有5个:DEBUG < INFO < WARN < ERROR < FATAL。一般使用前4个,分别表示日志的重要程度,如果Loggers级别设定为INFO,则INFO、WARN、ERROR和FATAL级别的日志信息都会输出,而级别比INFO低的DEBUG则不会输出。
2. Appender
定义appender名称,同时需要指定输出源,格式:
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
常用的输出源有:
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 (将日志信息以流格式发送到任意指定的地方)
名称定义之后,在名称后面可以配置appender的具体属性。
共同选项:
Threshold=DEBUG #日志级别,可以理解为是对Logger的第二次过滤。
ImmediateFlush=true #默认值是true,意谓着所有的消息都会被立即输出。
ConsoleAppender属性:
Target=System.err #默认情况下是:System.out,指定输出控制台
FileAppender 选项
File=D:/logs/mylog.txt #指定文件路径。
Append=false #默认值是true,即将消息增加到指定文件中,false指将消息覆盖指定的文件内容。
RollingFileAppender 选项
MaxFileSize=2MB #KB, MB 或者是 GB. 到一定大小时,会重新开始,并将之前一个日志文件改名mylog.log.1。
MaxBackup