logback变量替换:检查系统变量BEFORE proeprties file

时间:2015-08-07 15:13:07

标签: java logging configuration environment-variables logback

我有一个logback应用程序,它指定了这样的日志文件:

<appender name="FILE_APPENDER" class="ch.qos.logback.core.rolling.RollingFileAppender">
    <file>${FULL_PATH_TO_LOGFILE}</file>
    ...

应用程序通常执行如下:

/usr/bin/java \
     -DFULL_PATH_TO_LOGFILE=/var/log/myApp/component1.log \
     -cp myApplicationsFatJar.jar com.Component1

/usr/bin/java \
     -DFULL_PATH_TO_LOGFILE=/var/log/myApp/component2.log \
     -cp myApplicationsFatJar.jar com.Component2

正如您所看到的,对同一个jar的不同调用将为同一个胖罐中包含的不同组件生成不同的日志文件。

在某些情况下,应用程序将以这种方式调用,并且FULL_PATH_TO_LOGFILE将不会被定义,因此我希望路径来自属性文件(在这种情况下,所有组件将记录到相同的文件,这是不理想的,但对于这种情况是可以的)。问题是,根据我的理解,在检查系统变量之前,logback将首先查看属性文件 。我希望以相反的顺序执行此查找。这是否可以使用logback?

0 个答案:

没有答案