Wie initialisiere ich log4j richtig?
Nachdem ich log4j zu meiner Anwendung hinzugefügt habe, erhalte ich jedes Mal, wenn ich meine Anwendung ausführe, die folgende Ausgabe:
log4j:WARN Es konnten keine Appenders für den Logger (slideselector.facedata.FaceDataParser) gefunden werden. log4j:WARN Bitte initialisieren Sie das log4j-System ordnungsgemäß.
Es scheint, dass dies bedeutet, dass eine Konfigurationsdatei fehlt. Wo sollte sich diese Konfigurationsdatei befinden und was ist ein guter Startinhalt?
Ich verwende einfaches Java für die Entwicklung einer Desktop-Anwendung. Also kein Webserver usw...
272
3
Log4j sucht standardmäßig nach einer Datei namens log4j.properties oder log4j.xml auf dem Klassenpfad. Sie können steuern, welche Datei zur Initialisierung verwendet wird, indem Sie die Systemeigenschaften wie hier beschrieben einstellen (siehe Abschnitt "Standardinitialisierungsverfahren").
Zum Beispiel:
veranlasst log4j, im Klassenpfad nach einer Datei namens customName zu suchen.
Wenn Sie Probleme haben, finde ich es hilfreich, die log4j.debug zu aktivieren:
Es gibt in System.out viele hilfreiche Informationen darüber aus, welche Datei zur Initialisierung verwendet wurde, welche Logger / Appenders wie konfiguriert wurden usw.
Die Konfigurationsdatei kann eine Java-Eigenschaftsdatei oder eine Xml-Datei sein. Hier ist ein Beispiel für das Format der Properties-Datei aus der log4j Intro-Dokumentationsseite:
Suchen Sie online eine log4j.properties oder log4j.xml, die einen Root-Appender enthält, und legen Sie sie in Ihren Klassenpfad.
wird auf der Konsole protokolliert. Ich ziehe es vor, in eine Datei zu protokollieren, so dass Sie dies später untersuchen können.
obwohl für ausführliche Logging-Anwendungen 100KB normalerweise auf 1MB oder 10MB erhöht werden müssen, besonders für Debugging.
Ich persönlich richte mehrere Logger ein und setze den Root-Logger auf Warn- oder Fehlerstufe statt auf Debug.
Womit entwickeln Sie? Verwenden Sie Apache Tomcat?
Ich habe eine solche Eigenschaft in einer Java-Anwendung von mir.