Java 无法使用log4j DailyRollingFileAppender将日期附加到文件名
您好,我正在尝试使用log4j DailyRollingFileAppender将当前日期附加到文件名,但它不起作用。我使用了如下配置。请对此提出解决方案 性质Java 无法使用log4j DailyRollingFileAppender将日期附加到文件名,java,logging,log4j2,log4j,Java,Logging,Log4j2,Log4j,您好,我正在尝试使用log4j DailyRollingFileAppender将当前日期附加到文件名,但它不起作用。我使用了如下配置。请对此提出解决方案 性质 我希望日志文件为app2014-11-07.log,但它仍然是app.logDailRollingFileAppender意味着归档日志文件。 例如,今天是2014.11.07,当您第一次运行应用程序时,您的日志文件名将是app.log。明天,你再次运行应用程序,它的日志文件也被命名为app.log,但是昨天的日志文件已经更改,可能类似
我希望日志文件为app2014-11-07.log,但它仍然是app.logDailRollingFileAppender意味着归档日志文件。
例如,今天是2014.11.07,当您第一次运行应用程序时,您的日志文件名将是
app.log
。明天,你再次运行应用程序,它的日志文件也被命名为app.log
,但是昨天的日志文件已经更改,可能类似于app.log.2014.11.07
试试这个:
F:/temp/
或 改变这个
log4j.appender.rollingAppender.DatePattern='.'yyyy-MM-dd
到
这意味着它将每分钟生成一个新的日志文件。再次运行它。如果您使用的是log4j 1.x,我们强烈建议您使用1而不是(可能会丢失消息,) 因此,appender的配置可以是:
log4j.rootLogger=DEBUG,rollingAppender
log4j.appender.rollingAppender=org.apache.log4j.rolling.RollingFileAppender
log4j.appender.rollingAppender.rollingPolicy=org.apache.log4j.rolling.TimeBasedRollingPolicy
log4j.appender.rollingAppender.rollingPolicy.fileNamePattern=F:/temp/app%d{yyyy-MM-dd}.log
log4j.appender.rollingAppender.layout=org.apache.log4j.patternalyout
log4j.appender.rollingAppender.layout.ConversionPattern=[%p]%d%c%M-%M%n
注释
您可以使用以下配置:
log4j.rootLogger=INFO, stdout
log4j.appender.stdout=org.apache.log4j.DailyRollingFileAppender
#log4j.appender.stdout.layout=org.apache.log4j.HTMLLayout
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%d](%F:%L) - %m%n
#log4j.appender.stdout.File=/usr/tomcat7/webapps/ngp/newgen.log
log4j.appender.stdout.File=c:/logs/DSP.log
#log4j.appender.stdout.DatePattern='.'yyyy-MM-dd
log4j.appender.stdout=org.apache.log4j.RollingFileAppender
log4j.appender.stdout.MaxBackupIndex=1
log4j.appender.stdout.append=false
有没有其他方法可以让我甚至得到今天的文件和当前的日期?尝试了这个,下面给出了错误。log4j:WARN未能将属性[rollingPolicy]设置为值“org.apache.log4j.rolling.TimeBasedRollingPolicy”。log4j:WARN请为名为“rollingAppender”的RollingFileAppender设置一个滚动策略。我和V Joe的情况相同。仅供参考,此答案中提到的错误案例已解决。
log4j.appender.rollingAppender.DatePattern='.'yyyy-MM-dd-HH-mm
log4j.rootLogger=INFO, stdout
log4j.appender.stdout=org.apache.log4j.DailyRollingFileAppender
#log4j.appender.stdout.layout=org.apache.log4j.HTMLLayout
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%d](%F:%L) - %m%n
#log4j.appender.stdout.File=/usr/tomcat7/webapps/ngp/newgen.log
log4j.appender.stdout.File=c:/logs/DSP.log
#log4j.appender.stdout.DatePattern='.'yyyy-MM-dd
log4j.appender.stdout=org.apache.log4j.RollingFileAppender
log4j.appender.stdout.MaxBackupIndex=1
log4j.appender.stdout.append=false