2016-06-15 29 views
0

Ich versuche herauszufinden, wie Sie die aktive Protokolldatei bei jedem Start einfach umbenennen und alle gedrehten Dateien einmal pro Woche archivieren.log4j2 Archiv jede Woche, rotiere jeden Start?

Ich bin gezwungen, das "filePattern" bei der RollingFile-Appender-Deklaration anzugeben, anstatt an der Richtlinie. Macht das Sinn?

+0

ähnlich wie: http://stackoverflow.com/questions/30880246/log4j2-rollingfile-appender-start-archiving-after-n-days – lqbweb

+0

Die OnStartupTriggeringPolicy ausgelegt ist Damit können Sie die Protokolldatei bei jedem Start neu starten. Was genau meinen Sie mit "einmal pro Woche alle gedrehten Dateien archivieren"? Willst du sie zu einem anderen Ort zu dieser Zeit bewegen? Laufen Sie auf einem Unix-System? Wenn ja, ist das Erstellen eines Cron-Jobs zum Verschieben der Dateien ziemlich einfach. – rgoers

+0

Ja, ich möchte alte Logs zippen, wenn sie zu alt sind .... Es sollte vom Logging System durchgeführt werden, glaube ich, nicht von einer Systemaufgabe .... Ich glaube das war mit Log4j möglich 1. – lqbweb

Antwort

1

Am Ende habe ich meine eigene Implementierung einer DeleteAction gemacht und sie an eine DefaultRolloverStrategy angehängt, so dass sie vor dem Löschen alles zippen muss. Sie können den Quellcode finden Sie unter:

https://github.com/lqbweb/log4j2-ZipDelete