Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

log4net creates new log every minute

Tags:

c#

log4net

log4net in my project creates new log file every minute. I would like to have just one file per instance of my application, but every instance that runs should create new log file.

This is from my app.config file:

<appender name="file" type="log4net.Appender.RollingFileAppender">
  <file value="C:\\Logs\\log2_"/>
  <rollingStyle value="Date"/>
  <datePattern value="MMdd_HHmmss.\tx\t"/>
  <staticLogFileName value="false"/>
  <appendToFile value="true"/>
  <maximumFileSize value="500MB"/>
  <layout type="log4net.Layout.PatternLayout">
    <conversionPattern value="%date %-5level %message%newline"/>
  </layout>
</appender>

What is the error here?

like image 576
Tschareck Avatar asked Oct 20 '25 02:10

Tschareck


2 Answers

Your rolling style is set to Date meaning it will rotate on a time based interval. The datePattern element appears to be misused but it set to roll every minute (the ./tx/t) seem extraneous.

From the documentation the following is the example for once per app instance (with a 50G hard limit):

<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
    <file value="logfile.txt" />
    <appendToFile value="false" />
    <rollingStyle value="Size" />
    <maxSizeRollBackups value="-1" />
    <maximumFileSize value="50GB" />
    <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
    </layout>
</appender>

See here for the documentation

like image 162
Michael Gattuso Avatar answered Oct 21 '25 14:10

Michael Gattuso


exclude dateTime minutes from file layout

like image 25
burning_LEGION Avatar answered Oct 21 '25 15:10

burning_LEGION