1

I am using following log4net.config file:

<log4net>
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
<file value= " D:\Logs_Event\log_event.txt"/>
<staticLogFilename value = "false"/>
<appendToFile value="true"/>
<datepattern value = "yyyy-MM-dd"/>
<rollingStyle value="once"/>
<layout type = "log4net.Layout.PatternLayout">
<conversionPattern
     value="%date [%thread] %-5level %logger ==> %message%newline"/>
 </layout>
</appender>

<root>
<level value="ALL" />
<appender-ref ref="RollingLogFileAppender" />
<appender-ref ref="AdoNetAppender" />
</root>
</log4net>

When the application starts, I have to log all events in text files till the application ends. If the application starts next time the events will get logged into another text file with the respective date format. How can I achieve this?

Brian Tompsett - 汤莱恩
  • 5,753
  • 72
  • 57
  • 129
Devi S
  • 19
  • 3
  • 1
    Possible duplicate of [log4net one file per run](http://stackoverflow.com/questions/3048844/log4net-one-file-per-run) – stuartd Aug 18 '16 at 12:47

1 Answers1

0

You can achieve this using the PatternString option provided in log4Net.

<file type="log4net.Util.PatternString"
        value="LogFileName_%date{dd_MM_y(hh:mm:ss)}.log" />

check here for the date conversion pattern and here for Date time formatter.

related question: https://stackoverflow.com/a/10349613/5395773

Venkat
  • 2,549
  • 2
  • 28
  • 61