我目前有一个 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"/>
现在,看看进展如何。但是得到解释为什么会发生这种情况会很棒。
谢谢!
最佳答案
看来我的理论是正确的!默认文件大小为 10mb,默认滚动样式为复合。结合非静态文件名,当它达到 10mb 时,它只是滚动到同一个文件并再次开始记录。
关于c# - log4net 滚动文件追加器(按日期)覆盖现有文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17195492/