11

我们正在使用 log4net 滚动文件附加程序,并且对我们的日志文件有以下要求:

  • 每天开始时的新日志文件,文件名中包含日期
  • 最大日志文件大小为 500KB

我们遇到的问题是文件达到 500KB 时的文件命名策略:它们被重命名为.1后缀。这是有问题的,因为它会破坏 Windows 中的文件关联,因此打开文件(稍微)比较麻烦。

我们使用的配置是:

<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
  <file value="c:\log\path" />
  <staticLogFileName value="false" />
  <appendToFile value="true" />
  <rollingStyle value="Composite" />
  <datePattern value=".yyyy-MM-dd.lo\g" />
  <lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
  <maxSizeRollBackups value="50" />
  <maximumFileSize value="500KB" />
  <layout type="log4net.Layout.PatternLayout">
    <conversionPattern value="%date [%thread] %-5level %message%newline" />
  </layout>
</appender>

是否支持指定文件命中时使用的命名策略maximumFileSize

4

1 回答 1

8

Version 1.2.11 of log4net includes the PreserveLogFileNameExtension property on the RollingFileAppender. Setting the property to true will allow files to be rolled in the format logName.roll#.fileExt, keeping your file associations intact.

The entry inside the appender block would look like:
<param name="PreserveLogFileNameExtension" value="true" />

于 2012-11-14T05:34:22.577 回答