按大小滚动时向文件名追加日期

本文关键字:文件名 追加 日期 滚动 | 更新日期: 2023-09-27 18:16:12

我想配置log4net在按大小滚动时将名称附加到文件名。我只玩过log4net的配置部分,不确定是否必须为此在代码中配置一些东西。
这是我现在的代码:

<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
  <file value="C:''rolling-log.txt" />
  <appendToFile value="true" />
  <datePattern value="_yyyy-MM-dd" />
  <maxSizeRollBackups value="10" />
  <maximumFileSize value="10KB" />
  <rollingStyle value="Size" />
  <staticLogFileName value="true" />
  <preserveLogFileNameExtension  value="true"/>
  <layout type="log4net.Layout.PatternLayout">
    <param name="ConversionPattern" value="%m%n" />
  </layout>
</appender>

如果rollingStyle被设置为Date,我只能在文件名中获得日期,但是它不再滚动大小。

我在这里错过了什么?

按大小滚动时向文件名追加日期

变化

<file value="C:''rolling-log.txt" />

<file type="log4net.Util.PatternString" value="C:''rolling-log-%date{yyy-MM-dd}.txt" />

(或任何你喜欢的日期模式)。

注意:

不幸的是,文件名中指定的日期仅在配置时计算,这意味着在重新配置log4net之前,每个卷都将使用相同的日期。我还没有找到解决这个问题的方法。