使用log4j创建包含日期的日志文件

Vic*_*kor 6 java logging log4j

我正在使用下面的代码编写我的日志文件,但它将文件存储为QueryLog.log.我错过了什么吗?检查我的log4j.properties文件代码

log4j.logger.org.hibernate=INFO
log4j.logger.org.hibernate.SQL=DEBUG
log4j.logger.org.hibernate.type=TRACE
log4j.logger.org.hibernate.hql.ast.AST=info
log4j.logger.org.hibernate.tool.hbm2ddl=warn
log4j.logger.org.hibernate.hql=debug
log4j.logger.org.hibernate.cache=info
log4j.logger.org.hibernate.jdbc=debug
log4j.rootLogger = DEBUG, FILE
log4j.appender.FILE=org.apache.log4j.DailyRollingFileAppender
log4j.appender.FILE.DatePattern='.'yyyy-MM-dd-a
log4j.appender.FILE.File=log4j/QueryLog.log
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.conversionPattern= %d{HH:mm:ss} %-5p %c - %m%n
Run Code Online (Sandbox Code Playgroud)

我使用的链接:

http://www.tutorialspoint.com/log4j/log4j_logging_files.htm

http://www.codejava.net/coding/configure-log4j-for-creating-daily-rolling-log-files

cru*_*ush 6

如此StackOverflow问答中所提到的,a的目的RollingFileAppender是以某个定义的间隔自动创建新的日志文件.在该情况下DailyRollingFileAppender,该间隔是每天的凌晨12:00.

这意味着log4j创建的第一个文件将具有您在此处指定的文件名:

log4j.appender.FILE.File=log4j/QueryLog.log
Run Code Online (Sandbox Code Playgroud)

而且,从那时起,每天都会创建一个新的日志文件,并附加日期.

要始终使用附加日期命名文件,您可以使用DatedFileAppenderGeoff Mottram