log4net按日期滚动文件附加器(覆盖现有文件)

3

我目前使用的是基于日期的log4net滚动文件记录器,应该在每天进行滚动。它已经这样运行了几个月没有问题 - 但是在过去的一周中,在某一天的某个时间点开始覆盖现有日志。当日志文件达到大约10mb时似乎会发生这种情况。

以下是配置:

<appender name="Standard" type="log4net.Appender.RollingFileAppender">
  <file value="..\..\Logs\" />
  <lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
  <staticLogFileName value="false" />
  <datePattern value="yyyy-MM-dd'.log'" />
  <layout type="log4net.Layout.PatternLayout">
    <conversionPattern value="%d{yyyy-MM-dd HH:mm} %-5level %message%newline%exception" />
  </layout>
  <filter type="log4net.Filter.LevelRangeFilter">
    <levelMin value="DEBUG" />
    <levelMax value="WARN" />
  </filter>
</appender>

我的理解是滚动样式没有指定,最大尺寸也没有指定,默认设置为Composite和10mb。因此当它达到10mb时就开始滚动,由于静态日志文件名设置为false,所以它只是覆盖当前文件。
这是否属实?或者这里还有其他问题?我已经添加了……
<rollingStyle value="Date"/> 

现在,我们看看情况如何。但是得到一个为什么会发生这种情况的解释会很好。

谢谢!

2个回答

1

看起来我的理论是正确的!默认文件大小为10mb,滚动样式为复合。结合非静态文件名,在达到10mb时,它只是滚动到同一文件并重新开始记录日志。


0

您可以随时更改日期格式

 <param name="DatePattern" value="yyyy-MM-dd-hh'.log'" />

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接