1. 首页
  2. >
  3. 编程技术
  4. >
  5. Java

springboot log4j DatePattern 配置不起作用的问题

在springboot当中配置了log4j输出到文件:

# LOG4J配置
log4j.rootCategory = INFO,stdout,file
log4j.appender.file = org.apache.log4j.DailyRollingFileAppender
log4j.appender.file.file = logs/web.log
log4j.appender.file.DatePattern = '.'yyyy-MM-dd
log4j.appender.file.layout = org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n
按正常来说,应该是每天生成一个带日期的文件,但调试过程中,发现只生成web.log这个文件,没有任何日期。

从表面上来看,DatePattern似乎未生效,不起作用,也很奇怪。后来研究了一番,才发现这个配置是先生成web.log,如果有新的日期了,才将原来的web.log转移到web.log.2019.04.05这个文件。因此实际上功能是正常的,只是逻辑很费思量!而且这样设置的文件后缀也不再是.log了。