0

这有点像两个问题,都与 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 还是我没有正确设置记录器?

4

3 回答 3

2

您需要指定

      <rollingStyle value="Size"/>

  <maxSizeRollBackups value="1"/>
  <maximumFileSize value="10MB"/>

maxSizeRollBackups = 日志文件数

maximumFileSize = 一个日志文件的最大大小

于 2013-08-12T14:24:47.770 回答
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

于 2013-08-12T13:50:39.400 回答
1

问题是<rollingStyle value="Date"/>

它应该是

<rollingStyle value="Size"/>

http://logging.apache.org/log4net/release/config-examples.html RollingFileAppender

于 2013-08-12T13:51:00.210 回答