log4j Datei umbenennen Strategie

8

Ich benutze log4j 1.2.15 und ich frage mich, ob jemand eine Lösung für die lästige Dateiumbenennungsstrategie hat, die log4j benutzt.

Ich werde versuchen zu erklären: Ich verwende den folgenden RollingFileAppender, der 11 Protokolldateien mit jeweils 3 KB Größe erstellt.

log4j.appender.logfile = org.apache.log4j.RollingFileAppender
log4j.appender.logfile.File = server.log log4j.appender.logfile.MaxFileSize = 3 KB log4j.appender.logfile.MaxBackupIndex = 10

Das Problem ist, dass log4j beim Erstellen einer neuen Protokolldatei server.log.1 , server.log.2 etc ...

erstellt

Kann ich log4j so konfigurieren, dass das Suffix ".log" beibehalten wird, und für server.1.log erstellen?

Vielen Dank im Voraus Guy

    
Guy 10.04.2011, 12:30
quelle

2 Antworten

1

Ich mache das mit einer XML-Konfiguration (möglicherweise ohne) und mit Apache Extras Companion ™ für Apache log4j ™ (eine zusätzliche Bibliothek für log4j). Ich denke nicht, dass dies ohne die Extras funktioniert, aber es könnte sein.

Der Schlüssel ist die Verwendung von FileNamePattern .

%Vor%     
Thirler 10.04.2011 12:40
quelle
0

Ich benutze eine stündliche Iteration, die von Geoff Mottrams Dated File Appender wie folgt abgeleitet wurde, die Sie als Beispiel verwenden können eine Benennungsstrategie ableiten; Überprüfen Sie die Quelle von FileAppender und schauen Sie in der append-Methode nach, wo die Dateigröße überprüft wird, und überschreiben Sie dann FileAppender mit Ihrer eigenen Klasse, die die Umbenennung richtig handhabt:

%Vor%

Hier ist mein Appender-XML-Snippet für Tomcat (bezieht sich nicht auf Stunden, aber Sie können es aus meinem Code herausfinden):

%Vor%     
JoshDM 17.10.2011 04:39
quelle

Tags und Links