如何读取 log4j2 中的 catalina.properties
How to read from catalina.properties in log4j2
我的系统配置是:
Tomcat 9.0.14 Windows
Java 8
Spring 开机
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) 中创建。
我尝试将文件夹路径样式从 / 更改为 \,但仍然没有成功。
此外,我尝试使用以下但 none 有效:
$${sys:server_log_root}
${env:server_log_root}
$${env:server_log_root}
${server_log_root}
$${server_log_root}
谁能帮帮我?
提前致谢!
真诚的,
巴拉斯
我通过将 属性 作为环境变量放在 "context.xml" 中解决了这个问题(而不是 catalina.properties)
我的系统配置是: Tomcat 9.0.14 Windows Java 8 Spring 开机 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) 中创建。
我尝试将文件夹路径样式从 / 更改为 \,但仍然没有成功。 此外,我尝试使用以下但 none 有效:
$${sys:server_log_root}
${env:server_log_root}
$${env:server_log_root}
${server_log_root}
$${server_log_root}
谁能帮帮我? 提前致谢!
真诚的, 巴拉斯
我通过将 属性 作为环境变量放在 "context.xml" 中解决了这个问题(而不是 catalina.properties)