I am configure log4net to use a composite RollingFileAppender so that the current file is always named logfile.log and all subsequent files are named logfile-YYYY.MM.dd.seq.log where seq is the sequence number if a log exceeds a certain size within a single day. Unfortunately, I have had very little success in configuring such a setup.
Edit:
My current configuration is pasted below. It has been updated based on several answers which gets me close enough for my needs. This generates files of the format: logfile_YYYY.MM.dd.log.seq
<log4net> <root> <level value='DEBUG' /> <appender-ref ref='RollingFileAppender' /> </root> <appender name='RollingFileAppender' type='log4net.Appender.RollingFileAppender'> <file value='logs\\logfile'/> <staticLogFileName value='false'/> <appendToFile value='true'/> <rollingStyle value='Composite'/> <datePattern value='_yyyy.MM.dd".log"'/> <maxSizeRollBackups value='10'/> <maximumFileSize value='75KB'/> <layout type='log4net.Layout.PatternLayout'> <conversionPattern value='%date [%thread] %-5level %logger [%property{NDC}] - %message%newline'/> </layout> <filter type='log4net.Filter.LevelRangeFilter'> <param name='LevelMin' value='DEBUG' /> <param name='LevelMax' value='FATAL' /> </filter> </appender> </log4net>
One interesting note, setting
<staticLogFileName value='false'/>
to true causes the logger to not write any files.
We use the following (in Log4J):
This gives us Applog.log.yyyy-MM-dd files