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:
- Inclua o adaptador SLF4J para java.util.logging como dependência.
- 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
Depois de ter feito o registro em log mestre, considere as integrações que o Azure oferece em estruturas como Spring e MicroProfile.