Playframework 正在播放框架日志记录中获取FixedWindowRollingPolicy的当前时间
我想最多保存20个日志文件,当文件达到一定大小时,我会回滚。 问题是——当我归档一个文件时,我希望以它的名称显示当前时间 目前我使用:Playframework 正在播放框架日志记录中获取FixedWindowRollingPolicy的当前时间,playframework,logback,Playframework,Logback,我想最多保存20个日志文件,当文件达到一定大小时,我会回滚。 问题是——当我归档一个文件时,我希望以它的名称显示当前时间 目前我使用: <timestamp key="bySecond" datePattern="ddMMyyyy'-'HHmmss" timeReference="contextBirth"/> <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppende
<timestamp key="bySecond" datePattern="ddMMyyyy'-'HHmmss" timeReference="contextBirth"/>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${application.home}/logs/log.txt</file>
<append>true</append>
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
<fileNamePattern>${application.home}/logs/${bySecond}.%i.log</fileNamePattern>
<minIndex>1</minIndex>
<maxIndex>30</maxIndex>
</rollingPolicy>
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<maxFileSize>2KB</maxFileSize>
</triggeringPolicy>
<encoder>
<pattern>%date [%level] [%thread] from %logger - %message%n%xException</pattern>
</encoder>
</appender>
${application.home}/logs/log.txt
真的
${application.home}/logs/${bySecond}.%i.log
1.
30
2KB
%日期[%level][%thread]来自%logger-%message%n%xException
但是这里的问题是,bySecond
时间戳在服务启动时只计算一次
我想要的是每次滚动的当前时间。
我怎样才能做到这一点
顺便说一句,
如果我不需要在文件名中使用%i,那就太好了 @MichałWolnicki它适用于基于时间的RollingPolicy,但我使用的是FixedWindowRollingPolicy,它不允许使用%d。您找到答案了吗?