Teilen über


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

Dieser Artikel enthält eine Übersicht über das Hinzufügen der Protokollierung mithilfe von Log4j zu Anwendungen, die das Azure SDK für Java verwenden. Wie in Konfigurieren der Protokollierung im Azure SDK für Javaerwähnt, protokollieren alle Azure-Clientbibliotheken über SLF4J, sodass Sie Frameworks wie log4jfür die Protokollierung verwenden können.

Dieser Artikel enthält Anleitungen zur Verwendung der Log4J 2.x-Versionen, aber Log4J 1.x wird ebenfalls vom Azure SDK für Java unterstützt. Um die Log4j-Protokollierung zu aktivieren, müssen Sie zwei Schritte ausführen:

  1. Fügen Sie die Log4j-Bibliothek als Abhängigkeit ein,
  2. Erstellen Sie eine Konfigurationsdatei (entweder log4j2.properties oder log4j2.xml) im 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 der bekannten Schwachstelle CVE-2021-44228müssen Sie Log4j Version 2.16 oder höher verwenden.

Konfigurieren von Log4j

Es gibt zwei gängige Methoden zum Konfigurieren von Log4j: über eine externe Eigenschaftendatei oder über eine externe XML-Datei. Diese Ansätze werden unten beschrieben.

Verwenden einer Eigenschaftendatei

Sie können eine flache Eigenschaftendatei namens log4j2.properties im Verzeichnis /src/main/resources des Projekts platzieren. 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

Sie können eine XML-Datei namens log4j2.xml im verzeichnis /src/main/resources des Projekts platzieren. Diese Datei sollte die folgende Form aufweisen:

<?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 der Website. Weitere Informationen finden Sie unter Willkommen bei Log4j 2!

Nachdem Sie die Protokollierung gemeistert haben, sollten Sie die Integrationen in Betracht ziehen, die Azure für Frameworks wie Spring und MicroProfilebietet.