Compartilhar via


Registrar em log com o SDK do Azure para Java e o java.util.logging

Este artigo fornece uma visão geral de como adicionar log usando java.util.logging a aplicativos que usam o SDK do Azure para Java. A estrutura java.util.logging faz parte do JDK. Conforme mencionado em Configurar o registro em log no SDK do Azure para Java, todas as bibliotecas de clientes do Azure fazem o registro em log por meio do SLF4J, para que você possa usar estruturas de registro em log, como java.util.logging.

Para habilitar o java.util.logging, você deve fazer duas coisas:

  1. Inclua o adaptador SLF4J para java.util.logging como dependência.
  2. Crie um arquivo chamado logging.properties no diretório do projeto /src/main/resources.

Para obter mais informações relacionadas à configuração do logger, consulte Configurando a Saída de Log na documentação da Oracle.

Adicionar a dependência do Maven

Para adicionar a dependência maven, inclua o XML a seguir no arquivo pom.xml do projeto. Substitua o número de versão 1.7.30 pelo número de versão de lançamento mais recente mostrado na página Associação JDK14 do SLF4J.

<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-jdk14</artifactId>
    <version>1.7.30</version> <!-- replace this version with the latest available version on Maven central -->
</dependency>

Adicionar logging.properties ao seu projeto

Para registrar logs usando java.util.logging, crie um arquivo chamado logging.properties no diretório ./src/main/resources do seu projeto ou em qualquer outro lugar. Esse arquivo conterá as configurações de log para personalizar suas necessidades de registro. Forneça o caminho para o arquivo definindo a propriedade do sistema java.util.logging.config.file. Você deve definir essa propriedade antes de criar a instância do logger. Para obter mais informações, consulte Registro em log de Java: configuração.

Log de console

Você pode criar uma configuração para fazer logon no console, conforme mostrado no exemplo a seguir. Este exemplo é configurado para registrar em log todos os eventos de log que são de nível INFO ou superior, de onde quer que eles venham.

handlers = java.util.logging.ConsoleHandler
.level = INFO

java.util.logging.ConsoleHandler.level = INFO
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
java.util.logging.SimpleFormatter.format=[%1$tF %1$tH:%1$tM:%1$tS.%1$tL] [%4$s] %3$s %5$s %n

Registrar em log em um arquivo

O exemplo anterior registra no console, que normalmente não é o local preferido para registros. Para configurar o registro em log em um arquivo, use a seguinte configuração:

handlers = java.util.logging.FileHandler
.level = INFO

java.util.logging.FileHandler.pattern = %h/myapplication.log
java.util.logging.FileHandler.formatter = java.util.logging.SimpleFormatter
java.util.logging.FileHandler.level = INFO

Esse código criará um arquivo chamado myapplication.log em seu diretório inicial (%h). Esse registrador não suporta a rotação automática de arquivos após um determinado período. Se você precisar dessa funcionalidade, precisará escrever um agendador para gerenciar a rotação de arquivos de log.

Próximas etapas

Este artigo abordou a configuração de java.util.logging e como fazer o SDK do Azure para Java utilizá-lo para registro de logs. Como o SDK do Azure para Java funciona com todas as estruturas de log SLF4J, considere revisar o manual do usuário do SLF4J para obter mais detalhes.

Depois de ter feito o registro em log mestre, considere as integrações que o Azure oferece em estruturas como Spring e MicroProfile.