我的C#ASP.NET应用程序中有Log4Net。我正在尝试不汇总文件。我希望创建日志文件,并且我想要继续添加直到它达到10MB。现在,它每天都在创建一个新文件,这是我不想做的。我究竟做错了什么?这是我的Log4Net配置设置。
<appender name="MigrationRequestPatternFileAppender" type="log4net.Appender.PatternRollingFileAppender, CustomAppender">
<file value="D:\RequestOutputFiles\%property{RqGuid}.log" />
<appendToFile value="true" />
<staticLogFileName value="true" />
<maximumFileSize value="10MB" />
<rollingStyle value="Size" />
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<layout type="log4net.Layout.PatternLayout" value="%date %-5level %logger %-20M - %message%newline"/>
</appender>
答案 0 :(得分:0)
文件如何命名?
以及如何更改属性RqGuid
?
如果该属性在每次重新启动时都发生更改,并且您的服务器每晚重新启动,则是造成这种情况的原因。
如果不是,那么问题就出在哪里:您不是在使用RollingFileAppender
,而是在使用log4net.Appender.PatternRollingFileAppender, CustomAppender
。这是什么,为什么要使用它?
您可以按照log4net docs上的示例进行操作:
<appender name="MigrationRequestPatternFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="log.txt" />
<appendToFile value="true" />
<rollingStyle value="Size" />
<maxSizeRollBackups value="10" />
<maximumFileSize value="10MB" />
<staticLogFileName value="true" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %-5level %logger %-20M - %message%newline" />
</layout>
</appender>
一切都应该正常工作。 (如果有使用自定义附加程序的原因,我们需要查看代码并知道原因。)