Log4j使用笔记:每天生成一个日志文件、按日志大小生成文件
其中TestLog4j.java如下:
package cn.zhoucy.test;
import org.apache.log4j.Logger;
public class TestLog4j {
private static Logger logger=Logger.getLogger(TestLog4j.class); // 获取logger实例
public static void main(String[] args) {
logger.debug("调试debug信息");
logger.info("普通Info信息");
logger.warn("警告warn信息");
logger.error("error信息");
logger.fatal("严重错误fatal信息");
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
log4j.properties如下:
log4j.rootLogger=DEBUG, Console ,File ,DailyRollingFile ,RollingFile
#Console
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n
#File
log4j.appender.File = org.apache.log4j.FileAppender
log4j.appender.File.File = E://File.log
log4j.appender.File.layout = org.apache.log4j.PatternLayout
log4j.appender.File.layout.ConversionPattern =%d [%t] %-5p [%c] - %m%n
#DailyRollingFile
log4j.appender.DailyRollingFile = org.apache.log4j.DailyRollingFileAppender
log4j.appender.DailyRollingFile.File = E://DailyRollingFile.log
log4j.appender.DailyRollingFile.layout = org.apache.log4j.PatternLayout
log4j.appender.DailyRollingFile.layout.ConversionPattern =%d [%t] %-5p [%c] - %m%n
#RollingFile
log4j.appender.RollingFile = org.apache.log4j.RollingFileAppender
log4j.appender.RollingFile.File = E://RollingFile.log
log4j.appender.RollingFile.MaxFileSize=1KB
log4j.appender.RollingFile.MaxBackupIndex=3
log4j.appender.RollingFile.layout = org.apache.log4j.PatternLayout
log4j.appender.RollingFile.layout.ConversionPattern =%d [%t] %-5p [%c] - %m%n
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
由配置文件:Console 和File是常规的控制台和文件输出,而DailyRollingFile 和RollingFile分别是按天生成,和按日志文件指定大小生成文件。
运行后,控制台输出如下:
查看E盘根目录(我运行了7次程序,期间为了演示每天生成,改过两次电脑日期):
这里的File.log就是普通的输出,追加的方式。