【发布时间】:2016-11-08 13:10:58
【问题描述】:
我正在使用 log4Net 从应用程序中捕获事务数据,以帮助调试问题/错误。最近,它在文件大小达到 10MB 后并没有创建新文件,它只是停止记录数据。我在网上查看,发现一个消息来源说我需要添加一个互斥锁,所以我做了,没有任何改变。我的附加程序和根级别部分如下:
<!-- Appenders section -->
<log4net>
<appender name="file" type="log4net.Appender.RollingFileAppender">
<file value="c:\programs\DocIt\production\documakerError.log"/>
<appendToFile value="true" />
<rollingStyle value="Size" />
<maxSizeRollBackups value="10" />
<maximumFileSize value="10MB" />
<staticLogFileName value="true" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%d{yyyy-MM-dd HH:mm:ss.fff} [%thread] %-5p %c - %m%n" />
</layout>
<lockingModel type="log4net.Appender.FileAppender+MutexLock" />
</appender>
<!-- root section -->
<root>
<level value="DEBUG"/>
<appender-ref ref="file" />
</root>
感谢您的帮助。
【问题讨论】:
-
是因为你在配置中设置了限制
<maximumFileSize value="10MB" /> -
根据我对 log4Net 的理解,maximumFileSize 是文件在创建另一个文件之前将达到的大小(在 rollingFileAppender 中)。
-
这个配置没有问题,它几乎一字不差地匹配我的(除了你添加的锁定模型,我的是 4096KB 大小)
-
您知道 log4Net 的任何其他问题/原因,它不会创建滚动文件吗?
-
可能是权限问题?它是否能够在该文件夹中创建文件?
标签: c# logging log4net error-logging