Поделиться через


Создание журналов с помощью Azure SDK для Java и Log4j

В этой статье приводятся общие сведения о добавлении ведения журналов в приложения, использующие Azure SDK для Java, с помощью Log4j. Как упоминалось в статье Настройка ведения журнала в Azure SDK для Java, все клиентские библиотеки Azure ведут журналы с использованием SLF4J, поэтому вы можете использовать такие платформы ведения журналов, как log4j.

В этой статье представлено руководство по использованию Log4J 2.x, однако Azure SDK для Java также поддерживает Log4J 1.x. Чтобы включить ведение журнала с помощью log4j, необходимо выполнить два действия:

  1. Настроить библиотеку log4j в качестве зависимости.
  2. Создать файл конфигурации (либо log4j2.properties, либо log4j2.xml) в каталоге проекта /src/main/resources.

Дополнительные сведения о настройке log4j см. в статье Вас приветствует Log4j 2.

Добавление зависимости Maven

Чтобы добавить зависимость Maven, включите следующий код XML в файл проекта pom.xml. Замените номер версии 2.16.0 последним номером версии, отображаемым на странице привязки Apache Log4j SLF4J.

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

Примечание.

Из-за известной уязвимости CVE-2021-44228 обязательно используйте Log4j версии 2.16 или более поздней.

Настройка Log4j

Существует два стандартных способа настройки Log4j: через внешний файл свойств или с помощью внешнего XML-файла. Эти подходы описаны ниже.

Использование файла свойств

Файл неструктурированных свойств с именем log4j2.properties можно поместить в каталог /src/main/resources проекта. Этот файл должен иметь следующий вид:

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

Использование XML-файла

XML-файл с именем log4j2.xml можно поместить в каталог /src/main/resources проекта. Этот файл должен иметь следующий вид:

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

Следующие шаги

В этой статье описано, как выполнить конфигурацию Log4j и о том, как настроить Azure SDK для Java, чтобы обеспечить использование такой конфигурации для ведения журнала этим средством. Поскольку Azure SDK для Java работает со всеми платформами ведения журналов SLF4J, ознакомьтесь с руководством пользователя SLF4J, чтобы получить дополнительные сведения. Если вы используете Log4j, на веб-сайте этого средства также можно найти большое количество руководств по настройке. Дополнительные сведения см. в статье Вас приветствует Log4j 2!.

После того как вы научитесь вести журнал, рассмотрите возможность изучения интеграций, предоставляемых Azure для таких платформ, как Spring и MicroProfile.