1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/dsxbygzzl-logback-web

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README.md 2.8 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 15.03.2025 14:07 b3ef5d0

#logback-web

В обычной ситуации, если в одном web-контейнере используется несколько проектов с logback (в данном случае рассматривается Tomcat, но аналогично можно использовать другие контейнеры),

  1. каждый проект имеет свои lib-пакеты logback и конфигурационные файлы (logback.xml).

    Недостаток: при большом количестве проектов возникают повторяющиеся библиотечные пакеты, что замедляет процесс сборки WAR-пакетов и их обновление.

  2. lib-пакеты и конфигурационные файлы размещаются в каталоге Tomcat/lib.

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

Чтобы решить эту проблему, был создан проект logback-web.

Содержание очень простое — это всего лишь один класс и один конфигурационный файл.

Результат: JAR-пакеты logback и logback-web помещаются в каталог Tomcat/lib, а конфигурационные файлы логгирования каждого проекта (logback.xml или logback.groovy) размещаются в WEB-INF/classes своего проекта. Logback автоматически инициализирует LoggerFactory для каждого проекта отдельно.

Принцип работы: порядок чтения конфигурационных файлов logback следующий:

  1. Классовый путь (classpath) (если JAR-пакет находится в каталоге Tomcat/lib, то он будет искать его здесь).2. Найти первый реализованный класс Configurator.

  2. Внутренняя конфигурация по умолчанию (логирование в консоль в фиксированном формате).

Проект logback-web реализует интерфейс Configurator, используя инициализацию потока выполнения для каждого проекта для определения пути проекта и последующего чтения конфигурационных файлов.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/dsxbygzzl-logback-web.git
git@api.gitlife.ru:oschina-mirror/dsxbygzzl-logback-web.git
oschina-mirror
dsxbygzzl-logback-web
dsxbygzzl-logback-web
master