Sdílet prostřednictvím


Protokolování pomocí sady Azure SDK pro Javu a Log4j

Tento článek obsahuje přehled o tom, jak přidat protokolování pomocí Log4j do aplikací, které používají sadu Azure SDK pro Javu. Jak je uvedeno v Konfigurace protokolování v sadě Azure SDK pro Java, všechny klientské knihovny Azure vedou logy prostřednictvím SLF4J, takže můžete používat protokolovací architektury, jako je Log4j.

Tento článek obsahuje pokyny k používání verzí Log4J 2.x, ale Sada Azure SDK pro Javu je stejně podporovaná také sadou Log4J 1.x. Pokud chcete povolit protokolování log4j, musíte udělat dvě věci:

  1. Zahrnout knihovnu log4j jako závislost,
  2. Vytvořte konfigurační soubor (log4j2.properties nebo log4j2.xml) v adresáři projektu /src/main/ resources.

Další informace týkající se konfigurace log4j naleznete v tématu Vítá vás log4j 2.

Přidejte závislost na Maven

Pokud chcete přidat závislost Mavenu, přidejte do souboru pom.xml projektu následující KÓD XML. Nahraďte číslo verze 2.16.0 číslem nejnovější vydané verze, které se zobrazuje na stránce vazby Apache Log4j SLF4J.

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

Poznámka

Vzhledem ke známému ohrožení zabezpečení CVE-2021-44228nezapomeňte použít Log4j verze 2.16 nebo novější.

Konfigurace Log4j

Existují dva běžné způsoby konfigurace Log4j: prostřednictvím externího souboru vlastností nebo externího souboru XML. Tyto přístupy jsou popsány níže.

Použití souboru vlastností

Do adresáře /src/main/resources projektu můžete umístit soubor vlastností ve formátu flat s názvem log4j2.properties. Tento soubor by měl mít následující podobu:

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

Použití souboru XML

Soubor XML s názvem log4j2.xml můžete umístit do adresáře /src/main/resources projektu. Tento soubor by měl mít následující podobu:

<?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>

Další kroky

Tento článek se zabývá konfigurací Log4j a tím, jak přimět sadu Azure SDK pro Javu, aby ji používala k protokolování. Vzhledem k tomu, že sada Azure SDK pro Javu funguje se všemi architekturami protokolování SLF4J, zvažte další podrobnosti v uživatelské příručce SLF4J. Pokud používáte Log4j, najdete na jeho webu také obrovské množství pokynů ke konfiguraci. Další informace najdete v tématu Vítá vás Log4j 2!

Po zvládnutí protokolování zvažte prozkoumání integrací, které Azure nabízí do architektur, jako jsou Spring a MicroProfile.