【发布时间】:2014-01-23 03:50:58
【问题描述】:
我今天发现我们的生产系统的日志文件中丢失了很多内容。我们当前的日志文件包含所有内容(从午夜到午夜),但是当我查看前一天的日志时,它会在凌晨 1 点左右停止。
我查看了过去几个月创建的原木,切割原木时非常随机。大多在 2400 到 0300 之间。
<appender name="fileLogAppender" type="log4net.Appender.RollingFileAppender" >
<file name="filename" value="..\Logs\Errors.xml" />
<encoding value="utf-8" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd"/>
<threshold value="ERROR" />
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<layout type="log4net.Layout.XmlLayoutSchemaLog4j">
<locationInfo value="true"/>
</layout>
</appender>
<root>
<level value="Debug" />
<appender-ref ref="fileLogAppender" />
</root>
这会输出带有错误的 XML 文件(我使用 YALV!来读取我们的日志)。我们的 Log4net 版本是 1.2.10(我们无法升级它,因为它带有第三方软件,如果更改 log4net 似乎会崩溃。
EDIT1:
我正在运行一个 CMS 站点 (EPiServer 6 R2) - IIS7 负载平衡中的 .NET4(4 个服务器 + 1DB)。昨天的 50MB 日志滚动到 4KB 的日志。
【问题讨论】:
-
您能多解释一下您的系统吗?如果它是一个 IIS 应用程序,它可能由于缺乏使用而处于休眠状态。
-
添加了更多信息@EricScherrer
-
你说的翻转是指当它切断昨天的日志并开始一个新文件时,你上次检查它时只有4KB?
-
@EricScherrer 我的意思是,在我睡觉之前,我们当前的 Errors.xml 高达 50MB,而当午夜发生翻转时,23-01-14 的文件现在只有 4KB。我本来预计该文件会超过 50MB,因为它就在那儿。
-
好吧,我只是在这里拍摄。我认为您需要在日志文件名中包含日期,否则它将继续被覆盖。这是一个示例:
标签: log4net log4net-configuration log4net-appender