Anmerkung
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Dieser Artikel bietet eine Übersicht, wie Sie eine Protokollierung mithilfe von java.util.logging zu Anwendungen hinzufügen, die das Azure SDK für Java verwenden. Das java.util.logging Framework ist Teil des JDK. Wie in "Konfigurieren der Protokollierung" im Azure SDK für Java erwähnt, protokollieren alle Azure-Clientbibliotheken über Simple Logging Facade for Java (SLF4J), sodass Sie Protokollierungsframeworks wie z. B. java.util.logging verwenden können.
Zum Aktivieren java.util.loggingmüssen Sie zwei Schritte ausführen:
- Binden Sie den SLF4J-Adapter für
java.util.loggingals Abhängigkeit ein. - Erstellen Sie im Projektverzeichnis /src/main/resources eine Datei namens logging.properties.
Weitere Informationen zum Konfigurieren der Protokollierung finden Sie unter Konfigurieren der Protokollierungsausgabe in der Oracle-Dokumentation.
Hinzufügen der Maven-Abhängigkeit
Um die Maven-Abhängigkeit hinzuzufügen, fügen Sie den folgenden XML-Code in die pom.xml Datei des Projekts ein. Ersetzen Sie die Versionsnummer 1.7.30 durch die neueste veröffentlichte Versionsnummer, die auf der Seite SLF4J JDK14 Binding (SLF4J JDK14-Bindung) angezeigt wird.
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-jdk14</artifactId>
<version>1.7.30</version> <!-- replace this version with the latest available version on Maven central -->
</dependency>
Hinzufügen von logging.properties zu Ihrem Projekt
Um sich mit java.util.logginganzumelden, erstellen Sie eine Datei namens logging.properties unter dem ./src/main/resources Verzeichnis Ihres Projekts oder an einer anderen Stelle. Diese Datei enthält die Protokollierungskonfigurationen, um Ihre Protokollierungsanforderungen anzupassen. Geben Sie den Pfad zu der Datei an, indem Sie die java.util.logging.config.file-Systemeigenschaft festlegen. Sie müssen diese Eigenschaft festlegen, bevor Sie die Logger-Instanz erstellen. Weitere Informationen finden Sie unter Java-Protokollierung: Konfiguration.
Konsolenprotokollierung
Sie können eine Konfiguration erstellen, um die Protokollierung wie im folgenden Beispiel gezeigt in der Konsole auszugeben. Dieses Beispiel ist so konfiguriert, dass alle Protokollierungsereignisse unabhängig von der Quelle protokolliert werden, bei denen es sich um die Ebene INFO oder höher handelt.
handlers = java.util.logging.ConsoleHandler
.level = INFO
java.util.logging.ConsoleHandler.level = INFO
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
java.util.logging.SimpleFormatter.format=[%1$tF %1$tH:%1$tM:%1$tS.%1$tL] [%4$s] %3$s %5$s %n
Protokollieren in eine Datei
Das oben genannte Beispiel protokolliert in die Konsole, was normalerweise nicht der bevorzugte Ort für Protokolle ist. Verwenden Sie zum Konfigurieren der Protokollierung in eine Datei stattdessen die folgende Konfiguration:
handlers = java.util.logging.FileHandler
.level = INFO
java.util.logging.FileHandler.pattern = %h/myapplication.log
java.util.logging.FileHandler.formatter = java.util.logging.SimpleFormatter
java.util.logging.FileHandler.level = INFO
Dieser Code erstellt eine Datei namens myapplication.log in Ihrem Startverzeichnis (%h). Dieser Logger unterstützt nach einem bestimmten Zeitraum keine automatische Dateirotation. Wenn Sie diese Funktionalität benötigen, müssen Sie einen Scheduler schreiben, um die Protokolldateirotation zu verwalten.
Nächste Schritte
In diesem Artikel wurde die Konfiguration von java.util.logging behandelt und erläutert, wie das Azure SDK für Java für Protokollierung verwendet wird. Da das Azure SDK für Java mit allen SLF4J-Protokollierungsframeworks funktioniert, sollten Sie das SLF4J-Benutzerhandbuch überprüfen, um weitere Details zu erhalten.
Nachdem Sie die Protokollierung gemeistert haben, sollten Sie sich überlegen, welche Integrationen Azure in Frameworks wie Spring bietet.