
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{yyyyMMdd-HHmmss}.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{ISO8601} %-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) at ch .qos .logback .core.rolling.helper.FileNamePattern.convert(FileNamePattern.java:202) at ch .qos .logback .core.rolling.helper.FileNamePattern.convertInt(FileNamePattern.java: 210) at ch .qos .logback .core .rolling .FixedWindowRollingPolicy.rollover(FixedWindowRollingPolicy.java:103) at ch .qos .logback .core.rolling.RollingFileAppender.rollover(RollingFileAppender.java:105) at ch .qos .logback .core.rolling.RollingFileAppender.subAppend(RollingFileAppender.java: 128) at ch.qos.logback.core.WriterAppender.append(WriterAppender.java:119) at ch.qos.logback.core.AppenderBase.doAppend(AppenderBase.java:79) at ch .qos .logback .core .spi .AppenderAttachableImpl .appendLoopOnAppenders(AppenderAttachableImpl.java:60) at ch.qos.logback.classic.Logger.appendLoopOnAppenders(Logger.java:270) at ch.qos.logback.classic.Logger.callAppenders(Logger.java:257) at ch.qos.logback.classic.Logger.buildLoggingEventAndAppend(Logger.java: 439) at ch.qos.logback.classic.Logger.filterAndLog_0_Or3Plus(Logger.java: 393) at ch.qos.logback.classic.Logger.info(Logger.java:597) at ch .qos .logback.classic.net.SimpleSocketServer.run(SimpleSocketServer.java:79) Is this an intentional restriction to make the file name pattern have %i first and then %d? Thanks, Neil