Моя конфигурация системы: Tomcat 9.0.14 в Windows Ява 8 Весенний ботинок log4j2
В моих catalina.properties у меня определено следующее свойство:
server_log_root=D:/Bharath/Projects/Logs
В моем файле log4j2.xml я пытаюсь получить доступ к указанному выше свойству следующим образом:
<?xml version = "1.0" encoding = "UTF-8"?>
<Configuration status = "WARN">
<Properties>
<Property name = "LOG_HOME">${sys:server_log_root}</Property>
<Property name = "CONVERSION_PATTERN">%d{yyyy-MM-dd HH:mm:ss,SSS} tId=%X{TRANSACTION_ID} %-5p %C{1}:%L - %m%n</Property>
</Properties>
<Appenders>
<Console name = "CONSOLE_APPENDER" target = "SYSTEM_OUT">
<PatternLayout pattern = "${CONVERSION_PATTERN}" />
</Console>
<File name = "API_SERVICES_FILE_APPENDER" fileName = "${LOG_HOME}/api_services_log.log">
<PatternLayout pattern = "${CONVERSION_PATTERN}" />
</File>
</Appenders>
<Loggers>
<Root>
<AppenderRef ref = "CONSOLE_APPENDER" level = "debug"/>
</Root>
<Logger name = "API_SERVICES_FILE_LOGGER" level = "debug" additivity = "false">
<AppenderRef ref = "API_SERVICES_FILE_APPENDER" />
</Logger>
</Loggers>
</Configuration>
При запуске моего приложения журналы не создаются в папке (D:/Bharath/Projects/Logs).
Я попытался изменить стиль пути к папке с / на \, но все равно не повезло. Кроме того, я пытался использовать следующее, но никто не работал:
$${sys:server_log_root}
${env:server_log_root}
$${env:server_log_root}
${server_log_root}
$${server_log_root}
Может кто-нибудь мне помочь? Заранее спасибо!
Искренне, Бхарат




Я решил это, поместив свойство в качестве переменной среды внутри "context.xml" (вместо catalina.properties)