I am trying to create a unique log file for each application session. Example:
- MyApp-2014-07-08-04-36.log (1st execution)
- MyApp-2014-07-08-06-31.log (2nd execution, so on...)
With configuration below, it creates the file. However, I have noticed sometimes it create another new file in same session. There should be one file for the duration of application session.
I used PatternConverter to update the log folder path, so the log path can be set by the user.
<configuration>
<configSections>
<section
name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
</configSections>
<log4net>
<appender name="MainApplication" type="log4net.Appender.RollingFileAppender">
<file type="log4net.Util.PatternString">
<converter>
<name value="folder" />
<type value="MyApp.MainAppLogPatternConverter" />
</converter>
<conversionPattern value="%folder\MyApp-" />
</file>
<param name="AppendToFile" value="true" />
<param name="StaticLogFileName" value="false" />
<param name="DatePattern" value="yyyy-MM-dd-hh-mm-ss.lo\g" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%d %-5p %m%n" />
</layout>
</appender>
<logger name="MyApp">
<level value="DEBUG" />
<maximumFileSize value="10MB" />
<appender-ref ref="MainApplication" />
</logger>
</log4net>
</configuration>
Advance thanks for your advice.