Subscribed unsubscribe Subscribe Subscribe

oinume journal

Scratchpad of what I learned

log-back.xml内で変数を使って環境差異を吸収する

Java

変数と言ってもJavaなのでプロパティなのですが。

 

 

${app.home}/app.log

 

%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n

 

 

 

 

 

 

 

 

↑のような感じでlog-back.xmlを定義。

 

java -Dapp.home=/var/log/app ...

 

 

のようにシステムプロパティ定義してあげると、logback.xml内の${app.home}の部分が /var/log/app に置き換わる。

 

もともと、開発環境と本番環境でTomcatのディレクトリが違っていて、logback.xmlを環境ごとに定義していたのだけど、${app.home}で環境差異を吸収できるのでlogback.xmlは1ファイルで済む。もうちょいエレガントな方法がありそうだけど...

 

出典:http://logback.qos.ch/manual/joran.html#variableSubstitution

 

[tmkm-amazon]4774139904[/tmkm-amazon]