Log4net RollingFileAppender Size rollingStyle file extension

log4net

I am using the RollingFileAppender and the Size rollingStyle. By default it creates backup files with a numbered extension, this drives me nuts. Is it possible to change it so it always uses a defined extension (say .txt or .log) and inserts the number as part of the file name?

For example:

myapp.log
myapp.1.log
myapp.2.log
myapp.3.log

Here is my current configuration:

<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
    <file value="myapp.log"/>
    <appendToFile value="true"/>
    <rollingStyle value="Size"/>
    <maximumFileSize value="1MB"/>
    <maxSizeRollBackups value="10"/>
    <staticLogFileName value="true"/>
    <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date{ISO8601} [%3thread] %-5level %logger{3}: %message%newline" />
    </layout>
</appender>

Best Answer

The PreserveLogFileNameExtension property set to true should do the trick. Note: this property is not available in the currently released version 1.2.10 but is part of the current source. If you grab and build the source you're good to go.

Update: it is great to see log4net is moving forward. Version 1.2.11, and with it the PreserveLogFileNameExtension property, have been released.

Related Topic