Log4j2 прекрасно работает с Spring Boot через конфигурационный файл log4j2.xml
в корневом пути пути, точно так же, как указано в документации.Как я могу изменить местоположение log4j2.xml по умолчанию в Java Spring Boot?
При попытке переместить этот файл в другое место, однако, я не могу передать новое местоположение Spring при запуске. От the documentation:
Различные системы протоколирований могут быть активированы путем включения соответствующих библиотек на пути к классам, и в дальнейшей настроены обеспечивая соответствующий конфигурационный файл в корневом каталоге пути к классам, или в месте, указанном по свойствам Spring Environment
logging.config
.
Я попытался установить новое местоположение с системным свойством Java
java -jar -Dlogging.config="classpath:/config/log4j2.xml" target/app.jar
или с использованием внешнего application.properties
, содержащим соответствующего свойство
logging.config=classpath:/config/log4j2.xml
Но я регулярно встречен следующим сообщением об ошибке ,
ERROR StatusLogger No log4j2 configuration file found. Using default configuration: logging only errors to the console.
Не могли бы вы подтвердить, что '/ config' находится в пути к классам?если вы используете проект на основе maven, поместите файл xml под 'src/main/resources' – Mithun
Папка' config' (package) находится в пути к классам и уже содержит 'application.yml', который правильно подобран и успешно используется в приложении. – micpalmia
Не могли бы вы поместить файл xml в 'src/main/resources' и попробовать, чтобы мы могли сузить проблему? – Mithun