Log4Net-不要汇总文件

时间:2018-10-03 15:25:05

标签: c# log4net

我的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>

1 个答案:

答案 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>

一切都应该正常工作。 (如果有使用自定义附加程序的原因,我们需要查看代码并知道原因。)