Java 每次初始化log4j时将当前时间追加到新日志文件

Java 每次初始化log4j时将当前时间追加到新日志文件,java,log4j,Java,Log4j,每次运行应用程序时,我都希望生成一个带有时间戳的新日志文件。类似于MyFile-4Nov2010-132122.log的文件 我已经看到了的用法,但是我希望它可以每次滚动,而不是每天滚动。子类,或者在appender实例化时创建一个新文件。您还可以如下配置XML配置文件: <appender name="file" class="org.apache.log4j.DailyRollingFileAppender"> <param name="File" value="./l

每次运行应用程序时,我都希望生成一个带有时间戳的新日志文件。类似于MyFile-4Nov2010-132122.log的文件


我已经看到了的用法,但是我希望它可以每次滚动,而不是每天滚动。

子类,或者在appender实例化时创建一个新文件。

您还可以如下配置XML配置文件:

<appender name="file" class="org.apache.log4j.DailyRollingFileAppender">
  <param name="File" value="./logs/message"/>
  <param name="Append" value="true"/>
  <!-- Rollover at midnight each minute -->

  <param name="DatePattern" value="'-'yyyy-MM-dd'.log'"/>
  <layout class="org.apache.log4j.PatternLayout">
      <!-- The default pattern: Date Priority [Category] Message\n 
      <param name="ConversionPattern" value="%d %-5p [%c] %m%n"/>-->
      <!-- The full pattern: Date MS Priority [Category] (Thread:NDC) Message\n -->
      <param name="ConversionPattern" value="%d %-5r %-5p [%c] (%t:%x) %m%n"/>  
  </layout>


谢谢你。实际上,通过重写“void setFile(String)”,使用自定义文件名创建自己的文件比我想象的要容易