Ведение журнала с использованием Azure SDK для Java и java.util.logging

В этой статье содержится обзор того, как добавить ведение журнала с помощью java.util.logging в приложения, использующие Azure SDK для Java. Фреймворк java.util.logging является частью JDK. Как упоминалось в статье "Настройка ведения журнала в пакете SDK Azure для Java", все клиентские библиотеки Azure регистрируют с помощью Simple Logging Facade для Java (SLF4J), поэтому можно использовать такие платформы ведения журнала, как, например, java.util.logging.

Чтобы включить java.util.logging, выполните следующие действия.

  1. Добавьте адаптер SLF4J для java.util.logging в качестве зависимости.
  2. Создайте файл с именем log.properties в каталоге проекта /src/main/resources .

Дополнительные сведения о настройке средства ведения журнала см. в разделе "Настройка выходных данных ведения журнала " в документации Oracle.

Добавьте зависимость Maven для java.util.logging

Чтобы добавить зависимость Maven, добавьте следующий XML-код в файл pom.xml проекта. Замените номер версии 1.7.30 на номер последней выпущенной версии, указанный на странице биндинга SLF4J JDK14.

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

Добавьте файл logging.properties в ваш проект

Чтобы выполнить вход с помощью java.util.logging, создайте файл с именем log.properties в каталоге ./src/main/resources проекта или в любом другом месте. Этот файл содержит конфигурации ведения журнала для настройки потребностей ведения журнала. Укажите путь к файлу, задав системное java.util.logging.config.file свойство. Задайте это свойство перед созданием экземпляра средства ведения журнала. Дополнительные сведения см. в разделе ведение журнала Java: конфигурация.

Логирование в консоли

Вы можете создать конфигурацию для входа в консоль, как показано в следующем примере. Этот пример настроен на регистрацию всех журнальных событий уровня INFO и выше, независимо от их источника.

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

Вход в файл

В предыдущем примере логи записываются в консоль, что обычно не является предпочтительным местом для их размещения. Чтобы вместо этого настроить ведение журнала в файл, используйте следующую конфигурацию:

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

Этот код создает файл с именем myapplication.log в домашнем каталоге (%h). Этот средство ведения журнала не поддерживает автоматическую смену файлов после определенного периода. Если вам нужна эта функция, необходимо написать планировщик для управления сменой файлов журнала.

Дальнейшие действия

В этой статье описана конфигурация java.util.logging и способ использования пакета SDK Azure для Java для ведения журнала. Так как пакет SDK Azure для Java работает со всеми платформами ведения журнала SLF4J, рассмотрите возможность просмотра руководства пользователя SLF4J для получения дополнительных сведений.

Освоив журналирование, рассмотрите интеграции Azure с такими фреймворками, как Spring.