ist es möglich, die Eigenschaft "Datei" eines Appenders, der in log4j.properties
konfiguriert wurde, außer Kraft zu setzen, ohne einen neuen Appender zu erstellen?
Und wenn ja - wie?
Das ist die Situation: Ich habe zwei Apenders, A1 ist ein ConsoleAppender und A2 ist ein FileAppender. A2 "Datei" verweist auf ein generisches error.log:
log4j.appender.A2.File=error.csv
Dieser Appender protokolliert nur Ereignisse auf Fehlerebene oder schlechter durch
log4j.appender.A2.Threshold=error
.
Nun möchte ich, dass diese Fehler in verschiedenen Dateien geschrieben werden, abhängig davon, welche Klasse den Fehler verursacht hat, da es mehrere Klassen gibt, von denen Instanzen erstellt werden. Die Möglichkeit zu sehen, welche Klasse die Fehler schnell erstellt hat, wäre eine große Hilfe, da es viel hilfreicher ist, die error.log nach den Klassen-Tags zu durchsuchen.
Meine Idee war also, die Eigenschaft "Datei" zu überschreiben, z. in den Konstruktoren dieser neu erstellten Klassen, so dass sie Fehler in verschiedenen Dateien protokollieren.
Vielen Dank im Voraus!
Alte Frage (in Google gut indiziert). Zusätzlich zu der Anforderung von OP wurde das Hinzufügen zusätzlicher Methoden zur Manipulation von log4j.properties
log4j.properties
in Runtime log4j.properties
in Laufzeit Sie können log4j anweisen, eine andere Datei mit log4j.configuration
VM Option
Tags und Links java override properties log4j