Я реализую ведение журнала в весеннем загрузочном проекте с библиотекой logback. Я хочу загрузить разные файлы конфигурации журналирования в соответствии с моими весенними профилями (свойство 'spring.pofiles.active'). У меня есть 3 файла: logback- dev.xml, logback- inte.xml и logback- prod.xml. Я использую весеннюю загрузку версии 1.2.2.
Как вы можете прочитать spring загрузочной документации (здесь). Это говорит:
Различные системы ведения журналов могут быть активированы путем включения соответствующих библиотек в путь к классам и дополнительно настроены путем предоставления подходящего файла конфигурации в корне пути к классам или в месте, указанном свойством Spring Environment logging.config. (Однако обратите внимание, что, поскольку ведение журнала инициализируется до создания ApplicationContext, невозможно управлять ведением журнала из @PropertySources в файлах Spring @Configuration. Свойства системы и обычные внешние файлы конфигурации Spring Boot работают очень хорошо.)
Поэтому я попытался установить свойство 'logging.config' в моем файле application.properties:
logging.config=classpath:/logback-${spring.profiles.active}.xml
Но когда я запускаю свое приложение, мой logback- {profile}.xml не загружается...
Я думаю, что регистрация - это общая проблема, с которой сталкиваются все проекты, использующие весеннюю загрузку. Я на правильном пути с вышеупомянутым подходом? У меня есть другие решения, которые работают, но я нахожу их не такими элегантными (условный анализ с Janino в файле logback.xml или свойстве командной строки).