2016-07-06 19 views
0

Ich verwende log4Net, um Transaktionsdaten aus einer Anwendung zu erfassen, um Probleme mit dem Debugging grundlegend zu beheben. In letzter Zeit wurden keine neuen Dateien erstellt, nachdem die Dateigröße 10 MB erreicht hat, sondern lediglich die Aufzeichnung gestoppt. Ich schaute online und fand eine Quelle, die sagte, dass ich ein MutexLock hinzufügen musste, also tat ich und änderte nichts. Meine Appender und Root-Level-Abschnitte sind unter:log4Net RollingFileAppender "rollt" nicht

<!-- 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> 

Vielen Dank für Ihre Hilfe.

+0

es liegt daran, dass Sie sein Limit in der Konfiguration gesetzt haben '' –

+0

Aus was ich mit log4Net verstehe, ist die maximaleFileSize die Größe, die die Datei erreichen wird, bevor sie eine andere Datei erstellt (in der rollingFileAppender). –

+0

Es ist nichts falsch mit dieser Konfiguration, es entspricht fast wortwörtlich meinem anderen (außer dem Sperrmodell, das du hinzugefügt hast und meine ist 4096KB groß) – DavidG

Antwort

1

Ich habe den Grund gefunden, warum ich log4Net nicht dazu bringen konnte, die Dateien zu rollen. Es scheint, dass die Berechtigung zum Ändern der Dateifreigabe von unserem Dienstkonto widerrufen wurde. Dadurch konnte das Dienstkonto neue Dateien erstellen, konnte diese jedoch nicht umbenennen. Das ist entscheidend für den RollingFileAppender.