Details
-
Bug
-
Resolution: Unresolved
-
Major
-
None
-
None
-
None
Description
Hello Neil,
FileNamePattern does not support the %d when used within FixedWindowRollingPolicy. Only %i is supported. It's a currentlimitation of the code.
I suggest that you enter a jira issue requesting simultaneous support for %d and %i. Referencing or copying this thread would set a context for the problem which would be helpful.
Cheers,
Neil Lott wrote:
Hi,
I'm using a FileNamePattern with a FixedWindowPolicy:
Here's my appender:
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>/usr/local/mystro/logs/MSAServer.log</file>
<append>true</append>
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
<FileNamePattern>/usr/local/neil/logs/MSAServer.%i.%d
.gz</FileNamePattern> <MinIndex>1</MinIndex>
<MaxIndex>3</MaxIndex>
</rollingPolicy>
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<MaxFileSize>1KB</MaxFileSize>
</triggeringPolicy>
<layout class="ch.qos.logback.classic.PatternLayout">
<Pattern>%d
%-5level [%thread] (%logger
{0}.%M:%L
) - %msg%n</Pattern>
</layout>
</appender>
Here's the exception when the file rolls – I had to alter the rollover method of FixedWindowPolicy in order to catch throwable to see what was going on:
java.lang.IllegalArgumentException: Cannot convert 3 of typejava.lang.Integer
at ch.qos.logback.core.rolling.helper.DateTokenConverter.convert(DateTokenConverter.java:60)
[snip]
Is this an intentional restriction to make the file name pattern have %i first and then %d?
Thanks,
Neil