Log4Net RollingFileAppender mit composite Rollen Stil ist overwritting Daten

Ich habe eine Log4Net RollingFileAppender, die konfiguriert ist als:

<configuration>

  <configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
  </configSections>

  <log4net>

    <root>
      <level value="ALL" />
    </root>

    <logger name="RollingFileAppender" additivity="false">
      <level value="DEBUG"/>
      <appender-ref ref="RollingFileAppender" />
    </logger>

    <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender" >
      <param name="File" value="C:\\MyLog.log" />
      <param name="AppendToFile" value="true" />
      <param name="DatePattern" value="yyyy-MM-dd"/>
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%m%n"/>
      </layout>
    </appender>

  </log4net>

</configuration>

Blick auf die Dokumentation, die Die Standard-rolling style Composite -, so macht es Sinn, das wird Rollen, wenn es eine bestimmte Größe erreicht, (Standardeinstellung 10 MB), nicht nur auf das Datum.

Das problem ist, wenn es zuvor auf die Größe, es ist ein Neustart der log und ich verliere die Daten aus der ersten Hälfte des Tages (diese Größe erreicht um die Mittagszeit).

Warum würde dies nicht nur roll in eine neue Datei und alle künftigen log-Zeilen sind in der MyLog.log?
Oder ist es die log-ins Rollen kommt, aber dann, gegen Mitternacht, es rollt wieder und overwritting die vom Protokoll (zB. Rollen zu MyLog.log2009-04-08, sobald es erreicht 10MB, und dann overwritting diese gleiche Datei auf Mitternacht)?

Setze ich die

<rollingStyle value="Date" />

Ist das alles, was ich tun müssen, um sicherzustellen, dass es nur Rollen auf der Datums-Grenze? Kann ich das ändern auf der fliege in der Log4Net.config, oder muss ich die Anwendung neu zu starten? Es läuft auf IIS6.

  • Nur sicherstellen, dass ich verstehen: Sie wollen zu Rollen, auf dem Datum und der Größe? oder nur das Datum?
  • Ich will, dass es Rolle nur das Datum. Standardmäßig, wenn die Rollen festgelegt ist composite, also es rollt auf Datum oder Größe, je nachdem, was zuerst kommt.
InformationsquelleAutor Tai Squared | 2009-04-09
Schreibe einen Kommentar