11

私はこのようなものが必要です:

"param name =" File "value =" $ {CATALINA_HOME} /logs/log4j.log "

同様の質問をたくさん見ましたが、実用的な解決策はありません。

4

3 に答える 3

15

Tomcat 6.0以降の場合catalina.base(ではなくcatalina.home):

param name="File" value="${catalina.base}/logs/log4j.log"

ホストシステムによっては、次のように2つが異なる場合があります。

catalina.home: /usr/share/tomcat7
catalina.base: /var/lib/tomcat7 

その下catalina.homebinフォルダがあります。

その下catalina.baseにはconf、、、およびその他のフォルダ/リンクlogsがあります。webapps

Tomcatはcatalina.baseそれ自体を使用してロギングディレクトリを設定します-conf/logging.propertiesそれが言うところを見てください:

1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
于 2013-06-10T15:23:40.273 に答える
10

param name="File" value="${catalina.home}/logs/log4j.log"

このcatalina.homeプロパティは、Tomcatによってすでに利用可能になっています。

Tomcat 5.5のログページで(非常に)簡単な例を見つけ、次のSOの質問で詳細を確認してください。

Log4j、相対パスを使用するようにWebアプリを構成する

于 2012-05-26T21:14:47.203 に答える
4

次のことができます。

  1. CATALINA_HOMEオプションを使用して環境変数としてを送信し-Dます。あなたはただ走る必要があります

set JAVA_OPTS=%JAVA_OPTS% -DCATALINA_HOME=%CATALINA_HOME%Windowsまたは export JAVA_OPTS=${JAVA_OPTS} -DCATALINA_HOME=$CATALINA_HOMEUNIXを使用している場合。

ここで、log4j構成ファイルに$ {CATALINA_HOME}を使用するだけで、これが機能するはずです。

于 2012-05-26T21:02:43.220 に答える