Перейти к основному содержимому

Группы журналов в Spring Boot 2.1

· 2 мин. чтения

1. Обзор

Spring Boot предоставляет множество автоматических конфигураций для облегчения написания корпоративных приложений. Однако всегда было немного неудобно применять одну и ту же конфигурацию ведения журнала к набору регистраторов.

В этом кратком руководстве мы увидим, как новая функция групп журналов решит эту проблему.

2. Группы журналов

Начиная с Spring Boot 2.1 , можно сгруппировать несколько регистраторов вместе, а затем настроить их одновременно.

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

logging.group.rest=com.foreach.web,org.springframework.web,org.springframework.http

Здесь мы создаем группу с именем rest , содержащую три разных имени регистратора. Группировать регистраторы так же просто, как разделить их соответствующие имена регистраторов запятой.

Затем мы можем применить настройки ко всем регистраторам в группе одновременно. Например, здесь мы меняем уровень журнала для этой группы для отладки:

logging.level.rest=DEBUG

В результате Spring Boot применяет один и тот же уровень ведения журнала для всех трех членов группы.

2.1. Встроенные группы

По умолчанию Spring Boot поставляется с двумя встроенными группами: sql и web.

На данный момент веб - группа состоит из следующих логгеров:

  • org.springframework.core.codec
  • org.springframework.http
  • org.springframework.web
  • org.springframework.boot.actuate.endpoint.web
  • org.springframework.boot.web.servlet.ServletContextInitializerBeans

Точно так же группа sql содержит следующие регистраторы:

  • org.springframework.jdbc.core
  • org.hibernate.SQL
  • org.jooq.tools.LoggerListener

Настройка уровня журнала для любой из этих групп будет автоматически применена ко всем членам группы.

3. Заключение

В этой небольшой статье мы ознакомились с группами журналов в Spring Boot. Эта функция позволяет нам применить конфигурацию журнала сразу к набору регистраторов.

Как обычно, пример кода доступен на GitHub .