Micah
Micah

Reputation: 116090

How to force log4net to always use the same file

I have a process that runs 2x a month and I want to log what's it doing and then send the log file in an email at the end. What I noticed when I ran it last night was that when it passed midnight it kept logging everything to mylog.txt but put the previous days logs in mylog.txt.6-23-2011. How do I tell it to not do that and always use the same file? Here's my configuration:

  <log4net>
    <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
      <layout type="log4net.Layout.SimpleLayout" />
    </appender>
    <appender name="FileAppender" type="log4net.Appender.RollingFileAppender">
      <file value="c:\logs\mylog.txt" />
      <appendToFile value="false" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date - %message%newline" />
      </layout>
    </appender>
    <root>
      <level value="ALL" />
      <appender-ref ref="ConsoleAppender" />
      <appender-ref ref="FileAppender" />
    </root>
  </log4net>

Upvotes: 0

Views: 826

Answers (1)

kakridge
kakridge

Reputation: 2293

Check out the difference between FileAppender and RollingFileAppender here. It sounds like you want FileAppender with appendToFile set to true.

<appender name="FileAppender" type="log4net.Appender.FileAppender">
    <file value="c:\logs\mylog.txt" />
    <appendToFile value="true" />
    <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date - %message%newline" />
    </layout>
</appender>

Upvotes: 3

Related Questions