我在web服务web.config文件中设置了log4Net以及以下配置设置:
<log4net>
<!-- RollingFile is set to be a File Appender -->
<appender name="RollingFile" type="log4net.Appender.RollingFileAppender">
<file value="c:\temp\Sync.log" />
<appendToFile value="true" />
<maximumFileSize value="50MB" />
<maxSizeRollBackups value="10" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %-5level %-50logger - %message%newline%newline" />
</layout>
</appender>
<!-- Set root logger level to DEBUG to have all log -->
<root>
<level value="INFO" />
<appender-ref ref="RollingFile" />
</root>
我遇到的问题是当我看到temp时,我会看到17个文件 的sync.log Sync.log20180424.log (其他带日期的同步文件) ... 最后一个是 Sync.log20180405
我很困惑为什么它没有删除超过10天的那些,如maxSizeRollBackups所述。 我知道默认情况下是rollingStyle = composite。 使用我当前的配置,如果我放手,它会如何表现? 而作为第二个 - 我目前的设置中缺少什么。
感谢。我知道有类似的问题,但在阅读它们时,我觉得我仍然缺少一些东西。
答案 0 :(得分:0)
事实证明,我试图做的事情是不可能的 如其他地方所述:
不支持在日期/时间边界上滚动时的最大备份文件数。
因此,我将日期部分取出,以便备份仅按大小滚动。在这之后,我没有同样的问题。我不太喜欢文件名,但仍然很容易根据上次编辑日期的文件属性来跟踪它们。