我目前有一个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"/>
现在,并将看到它如何发展。但要解释为什么会发生这种情况会很棒。
谢谢!
答案 0 :(得分:0)
看起来我的理论是正确的!默认文件大小为10mb,默认滚动样式为复合。结合非静态文件名,当它达到10mb时,它只是转到同一个文件并再次开始记录。
答案 1 :(得分:0)
您可以随时更改日期模式
<param name="DatePattern" value="yyyy-MM-dd-hh'.log'" />