我的公司有一个环境管理工具,使您能够在Java中以编程方式从环境中查找属性。我想利用此工具来配置logback。例如,假设我有一个如下所示的logback.xml (特别是文件附加器部分):
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<!-- console appender -->
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{yyyy-MM-dd/HH:mm:ss.SSS} [%thread] %-5level %logger{20}: %msg%n</pattern>
</encoder>
</appender>
<!-- file appender -->
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
<file>${LOG_FILE:-/default/log/file/path</file>
<encoder>
<pattern>%d{yyyy-MM-dd/HH:mm:ss.SSS} [%thread] %-5level %logger{20}: %msg%n</pattern>
</encoder>
</appender>
<root level="DEBUG">
<appender-ref ref="CONSOLE" />
<appender-ref ref="FILE" />
</root>
</configuration>因此,在本例中,我希望从环境(或操作系统,如果您愿意)中查找LOG_FILE属性,并在logback加载logback.xml之前将其传递给logback,以便它知道LOG_FILE的值。那么,我如何才能做到这一点呢?顺便说一句,我知道如何以编程方式定义文件附加器,但这不是我在这里想要的。
非常感谢。
https://stackoverflow.com/questions/24235296
复制相似问题