Partilhar via


Faça logon com o SDK do Azure para Java e Log4j

Este artigo fornece uma visão geral de como adicionar log usando Log4j a aplicativos que usam o SDK do Azure para Java. Conforme mencionado em Configurar o registo no SDK do Azure para Java, todas as bibliotecas de cliente do Azure fazem registo através do SLF4J, pelo que é possível usar frameworks de registo, como o log4j.

Este artigo fornece orientação para usar as versões do Log4J 2.x, mas o Log4J 1.x é igualmente suportado pelo SDK do Azure para Java. Para habilitar o log4j, deve-se fazer duas coisas:

  1. Inclua a biblioteca log4j como uma dependência,
  2. Crie um ficheiro de configuração (log4j2.properties ou log4j2.xml) no diretório do projeto /src/main/resources.

Para obter mais informações relacionadas à configuração do log4j, consulte Bem-vindo ao Log4j 2.

Adicionar a dependência do Maven

Para adicionar a dependência Maven, inclua o seguinte XML no arquivo pom.xml do projeto. Substitua o número da versão 2.16.0 pelo número da versão mais recente lançada mostrado na página Apache Log4j SLF4J Binding.

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

Observação

Devido à vulnerabilidade conhecida CVE-2021-44228, certifique-se de usar o Log4j versão 2.16 ou posterior

Configurando o Log4j

Há duas maneiras comuns de configurar o Log4j: por meio de um arquivo de propriedades externo ou por meio de um arquivo XML externo. Estas abordagens são descritas a seguir.

Usando um ficheiro de propriedades

Você pode colocar um arquivo de propriedades simples chamado log4j2.properties no diretório /src/main/resources do projeto. Este ficheiro deve assumir a seguinte forma:

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

Usando um arquivo XML

Você pode colocar um arquivo XML chamado log4j2.xml no diretório /src/main/resources do projeto. Este ficheiro deve assumir a seguinte forma:

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

Próximos passos

Este artigo abordou a configuração do Log4j e como fazer com que o SDK do Azure para Java o use para registro. Como o SDK do Azure para Java funciona com todas as estruturas de log SLF4J, considere revisar o manual do usuário SLF4J para obter mais detalhes. Se você usa o Log4j, também há uma grande quantidade de orientações de configuração em seu site. Para obter mais informações, consulte Bem-vindo ao Log4j 2!

Depois de dominar os registos, considere examinar as integrações que o Azure oferece para frameworks como Spring e MicroProfile.