slf4j Logging mit jdk - Wie aktiviert man debug?
Standardmäßig slf4j, bei der Verwendung von jdk (slf4j-jdk14-1.6.1.jar), nicht protokollieren von debug-Meldungen.
Wie aktiviere ich Sie?
Ich finde keine info, weder in die offiziellen Dokumente, das web oder hier auf, wie um es zu aktivieren.
Ich einige Infos gefunden (nicht obwohl) Sie eine Datei erstellen, in %JDK_HOME%/lib und Definition der Ebene gibt es, in einer config-Datei.
Ich möchte jedoch auf die Ebene zu definieren, zur compile-/Laufzeit-so kann ich beides ausführen und Debuggen, die meine app von meiner IDE mit verschiedenen protokollierungsstufen.
Gibt es nicht ein environment-variable, die ich setzen kann, oder VM arg?
InformationsquelleAutor der Frage Kissaki | 2010-11-25
Du musst angemeldet sein, um einen Kommentar abzugeben.
Warum glaubst du, dass es nicht log-DEBUG-Meldungen?
Wenn du meinst, dass Ihr
log.debug(String)
Protokollierung Anrufe am Ende nicht injava.util.logging
log-Dateien, dann denke ich, Sie müssen zum konfigurieren derlogging.properties
Konfigurations-Datei an, damit die log-Meldungen anFINE
Ebene.Wenn Sie nicht wollen, um Durcheinander mit den globalen
%JRE_HOME%/lib/logging.properties
dann können Sie geben Sie einfach in-Djava.util.logging.config.file=logging.properties
auf der Kommandozeile - diese zwingen wird, das logging-system zu suchen, dass die Konfigurationsdatei im aktuellen Verzeichnis.Haben oder einige andere (programmatische) Möglichkeit zum konfigurieren
java.util.logging
siehe unten für die Anleitung.Dies hat nichts zu tun mit der Konfiguration von SLF4J; in der Tat, SLF4J keine Konfiguration, ist alles konfiguriert durch einen Austausch der JAR-Dateien.
Für Ihre Referenz:
InformationsquelleAutor der Antwort Neeme Praks
Wenn Sie mit slf4j SimpleLogger Umsetzung Lesen Sie diese.
Dort können Sie sehen, dass
simpleLogger
verwendenINFO
als Standard-log-level. Sie können es ändern, indem ein system-Eigenschaft. Dies ist nützlich für nicht-Produktions-evironments:InformationsquelleAutor der Antwort KingQuercus
Ich nur meine Anmeldung.Eigenschaften Datei in "meine Anwendungen" WEB-INF/classes-Datei (oder verwenden Sie das Kommandozeilen-argument identifiziert Neeme Praks, wenn Sie nicht bereitstellen, die in einem Krieg), und die Eigenschaften der Datei öffnen Sie in eclipse also ich kann eine Feinabstimmung zur Anmeldung der Pakete und auf der Ebene, die mich interessiert.
In der Protokollierung.properties-Datei, die Sie benötigen, um sicherzustellen, dass sowohl der logger-Ebene und der hf-Ebene die Ebene, die Sie wollen. Zum Beispiel, wenn Sie möchten, dass Ihre Ausgabe zu gehen, um die Konsole zu können, müssen Sie mindestens die folgenden:
Erwähnten Sie die
slf4j-jdk14-1.6.1.jar
. Dies bietet die slf4j Bindung an java.util.die Protokollierung. Sie brauchen zu haben, dass in Ihrem classpath, aber stellen Sie sicher, Sie haben auch die slf4j-api (slf4j-api-1.7.12.jar
) in den classpath als gut.Finde ich das Beispiel der Protokollierung.Eigenschaften-Datei in diesem link nützlich für die Erstellung einer Vielzahl von Logger und Handler, um Ihnen fein abgestimmte Kontrolle über das, was die Protokolle gehen an die Konsole, und welche Protokolle gehen Sie zu eine-Datei:.
Und hier ist die slf4j manual.
InformationsquelleAutor der Antwort Jibbyj