这有两个问题合二为一,都与log4net有关。
<?xml version="1.0"?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
</configSections>
<log4net>
<appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender">
<file type="log4net.Util.PatternString" value="%property{LogName}" />
<encoding value="utf-8"/>
<appendToFile value="true"/>
<rollingStyle value="Date"/>
<maximumFileSize value="10MB"/>
<staticLogFileName value="false"/>
<datePattern value=".MM-dd-yyyy"/>
<preserveLogFileNameExtension value="true"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %-5level %logger - %message%newline"/>
</layout>
</appender>
<root>
<level value="ALL" />
<appender-ref ref="LogFileAppender"/>
</root>
</log4net>
</configuration>
我有这个配置,我想要实现的是,我总是只有一个最大10 MB的日志文件。
我得到的问题是它每天都会创建一个新文件(我想保留文件应该修复它),当我离开它太长时间(意外地将它留在一夜之间)时,我回到了一个文件这是6 GB大(我认为maximumFileSize应该处理)。
我是否假设log4net太多或者我没有正确设置记录器?
答案 0 :(得分:2)
您需要指定
<rollingStyle value="Size"/>
和
<maxSizeRollBackups value="1"/>
<maximumFileSize value="10MB"/>
maxSizeRollBackups =日志文件数
maximumFileSize =一个日志文件的最大大小
答案 1 :(得分:1)
您需要指定
<RollingStyle value="Composite" />
<!-- change file depending date and length of the log file -->
或
<RollingStyle value="Size" />
<!-- change file depending length of the log file -->
而不是Date
答案 2 :(得分:1)
问题是<rollingStyle value="Date"/>
应该是
<rollingStyle value="Size"/>
http://logging.apache.org/log4net/release/config-examples.html RollingFileAppender