. but ...">

Overwrite existing log file

How to "overwrite an existing log file" ??? I tried to set the attribute property <appendToFile value="false" /> . but the log file is not overwritten yet. The settings for my configuration file are as follows:

  <log4net> <root> <level value="DEBUG" /> <appender-ref ref="LogFileAppender" /> </root> <appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender" > <file value="Content/log.txt" /> <appendToFile value="false" /> <threshold value="ON" /> <rollingStyle value="Size" /> <maxSizeRollBackups value="10" /> <maximumFileSize value="10MB" /> <staticLogFileName value="false" /> <layout type="log4net.Layout.PatternLayout"> <param name="ConversionPattern" value="%-5p%d{yyyy-MM-dd hh:mm:ss} – %m%n" /> </layout> </appender> </log4net> 

please let me know where i am making a mistake.

+4
source share
3 answers

I think you could use FileAppender and not RollingFileAppender. It allows you to overwrite an existing file.

http://logging.apache.org/log4net/release/sdk/log4net.Appender.FileAppender.html

 <appender name="FileAppender" type="log4net.Appender.FileAppender"> <file value="Content/log.txt" /> <appendToFile value="false" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" /> </layout> </appender> 

Set appendToFile to false

The following shows how to write a rollapender file once per execution, but it will still create a new file per execution:

On the examples page

 <appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender"> <file value="Content/log.txt" /> <appendToFile value="false" /> <rollingStyle value="Size" /> <maxSizeRollBackups value="-1" /> <maximumFileSize value="10MB" /> <layout type="log4net.Layout.PatternLayout"> <param name="ConversionPattern" value="%-5p%d{yyyy-MM-dd hh:mm:ss} – %m%n" /> </layout> </appender> 
+5
source

Try using this:

 <param name="AppendToFile" value="false" /> <rollingStyle value="Size" /> <maxSizeRollBackups value="0" /> <staticLogFileName value="true" /> 

This configuration will overwrite the existing log file.

+3
source

Overwrites an existing file, so you want to continue to write to the same file (for example, a circular buffer)? If yes,

1) You must set maxSizeRollBackups = 0.

2) You should also set appendToFile = true

Please try to tell us about your results.

0
source

Source: https://habr.com/ru/post/1313384/


All Articles