Melden Sie sich mit dem Azure SDK für Java und Log4j an

In diesem Artikel wird gezeigt, wie Sie Log4j für Anwendungen konfigurieren, die das Azure SDK für Java verwenden. Wie in Protokollierung im Azure SDK für Java konfigurieren erwähnt, protokollieren alle Azure-Clientbibliotheken über SLF4J, sodass Sie Frameworks wie Log4j 2 verwenden können, um die Problembehandlung zu vereinfachen.

Dieser Artikel enthält Anleitungen für die Verwendung der Log4J 2.x-Versionen, aber die Azure SDK für Java unterstützt auch Log4J 1.x. Führen Sie die folgenden beiden Schritte aus, um die Log4j-Protokollierung zu aktivieren:

  1. Fügen Sie die Log4j-Bibliothek als Abhängigkeit ein.
  2. Erstellen Sie eine Konfigurationsdatei (log4j2.properties oder log4j2.xml) unter dem Projektverzeichnis "/src/main/resources ".

Weitere Informationen zum Konfigurieren von log4j finden Sie unter "Willkommen bei Log4j 2".

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 2.16.0 durch die neueste veröffentlichte Versionsnummer, die auf der Seite Apache Log4j SLF4J Binding (Apache Log4j SLF4J-Bindung) angezeigt wird.

<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-slf4j-impl</artifactId>
    <version>2.16.0</version>
</dependency>

Anmerkung

Aufgrund bekannter Sicherheitsanfälligkeit CVE-2021-44228 sollten Sie Log4j, Version 2.16 oder höher, verwenden.

Konfigurieren von Log4j

Sie können Log4j auf zwei gängige Arten konfigurieren: über eine externe Eigenschaftendatei oder über eine externe XML-Datei. In den folgenden Abschnitten werden diese Ansätze beschrieben.

Verwenden einer Eigenschaftendatei

Platzieren Sie eine flache Eigenschaftendatei namens "log4j2.properties " im Verzeichnis "/src/main/resources " des Projekts. Diese Datei sollte die folgende Form aufweisen:

appender.console.type = Console
appender.console.name = STDOUT
appender.console.layout.type = PatternLayout
appender.console.layout.pattern = %d %5p [%t] %c{3} - %m%n

logger.app.name = com.azure.core
logger.app.level = ERROR

rootLogger.level = info
rootLogger.appenderRefs = stdout
rootLogger.appenderRef.stdout.ref = STDOUT

Verwenden einer XML-Datei

Platzieren Sie eine XML-Datei namens log4j2.xml im Verzeichnis "/src/main/resources " des Projekts. Die Datei sollte dieser Struktur folgen:

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="INFO">
    <Appenders>
        <Console name="console" target="SYSTEM_OUT">
            <PatternLayout pattern="%d %5p [%t] %c{3} - %m%n" />
        </Console>
    </Appenders>
    <Loggers>
        <Logger name="com.azure.core" level="error" additivity="true">
            <appender-ref ref="console" />
        </Logger>
        <Root level="info" additivity="false">
            <appender-ref ref="console" />
        </Root>
     </Loggers>
</Configuration>

Nächste Schritte

In diesem Artikel werden die Konfiguration von Log4j und wie man das Azure SDK für Java dafür verwendet, um Protokollierung durchzuführen, behandelt. Da das Azure SDK für Java mit allen SLF4J-Protokollierungsframeworks funktioniert, sollten Sie das SLF4J-Benutzerhandbuch überprüfen, um weitere Details zu erhalten. Wenn Sie Log4j verwenden, gibt es auch eine große Menge an Konfigurationsanleitungen auf seiner Website. Weitere Informationen finden Sie unter Willkommen bei Log4j 2!

Sobald Sie die Protokollierung beherrschen, sollten Sie sich die Integrationen ansehen, die Azure für Frameworks wie Spring bietet.