Wie geben Sie eine logback-Konfiguration als classpath-Ressource, anstatt eine Datei

Ich habe die folgende situation. Ich muss in der Lage zu laufen zwei Programme ins Leben gerufen, durch verschiedene batch-Dateien, wo jede batch-Datei ruft eine java-Klasse mit main() aus dem gleichen Glas. Ich möchte jedes Programm ein eigenes Protokoll. Jedoch, das zweite Programm ist ein installer für die erste, und deshalb, ich will nicht/kann nicht einfach festlegen,- Dlogback.configurationFile=/path/to/config-Datei so, dass die Lage möglicherweise noch nicht vorhanden.

Logback Dokumentation scheint eine Lösung zu bieten , aber ich brauche ein Beispiel, wie es funktionieren:

Geben Sie den Speicherort der Standard-Konfiguration als ein system
Eigenschaft

Wenn Sie möchten, können Sie den Speicherort angeben, der default-Konfiguration
Datei mit der system-property namens logback.configurationFile. Der Wert
von dieser Eigenschaft kann eine URL, eine Ressource über die Klasse Pfad oder einen Pfad
um eine Datei außerhalb der Anwendung.

java -Dlogback.configurationFile=/path/to/config.xml
Kapitel.- Konfiguration.MyApp1

Kann jemand mir ein Beispiel, wo logback.Konfigurationsdatei wird definiert als eine resource im classpath im Gegensatz zu der Datei system?

  • Wenn es nur der log-Datei, die Sie ändern wollen, warum nicht für die Definition der log-Datei, als variable in einer einzigen logback.xml Konfigurations-Datei. Dies ist besonders gut, wenn die meisten der logging-Konfiguration ist die gleiche. Dann den logfile Namen gelesen werden können, von einer resource im classpath oder werden Teil der Installation ist der Aufruf.
InformationsquelleAutor Steve Cohen | 2012-10-25
Schreibe einen Kommentar