按大小滚动时,将日期添加到文件名

时间:2013-05-31 13:52:24

标签: c# log4net

我想配置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,我只能在文件名中获取日期,但之后它不再滚动大小。

我在这里缺少什么?

1 个答案:

答案 0 :(得分:0)

更改

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

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

(或您喜欢的任何日期格式)。

注意事项:

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