最近、Tomcat 9を導入しました。実行中のcatalina.outログを調べたいのですが、停止すると、ログ出力がcatalina。[date] .txtファイルにダンプされます。 catalina.outへのライブロギングを有効にするために実行する追加の設定はありますか?
デフォルトでは、少なくともLinuxでは、私が知っているTomcatのすべてのバージョンで、コンソールログを$Tomcat_HOME/logs/catalina.out
に、または$CATALINA_OUT
と定義されている場合は、そのvar内のファイル名に書き込みます。
実際、これは開始スクリプトから行われます。ここに、Tomcat 9.0.0.M13からの開始スクリプトの相対的な部分がありますが、他のバージョンでも同じことが行われます。ファイル:$Tomcat_HOME/bin/startup.sh
はcatalina.sh
を呼び出します
startup.sh:
#!/bin/sh
[...]
PRGDIR=`dirname "$PRG"`
EXECUTABLE=catalina.sh
[...]
exec "$PRGDIR"/"$EXECUTABLE" start "$@"
catalina.sh:
#!/bin/sh
[...]
# CATALINA_OUT (Optional) Full path to a file where stdout and stderr
# will be redirected.
# Default is $CATALINA_BASE/logs/catalina.out
[...]
if [ -z "$CATALINA_OUT" ] ; then
CATALINA_OUT="$CATALINA_BASE"/logs/catalina.out
fi
[...]
Elif [ "$1" = "start" ] ; then
[...]
eval $_Nohup "\"$_RUNJAVA\"" "\"$LOGGING_CONFIG\"" $LOGGING_MANAGER $Java_OPTS $CATALINA_OPTS \
-classpath "\"$CLASSPATH\"" \
-Dcatalina.base="\"$CATALINA_BASE\"" \
-Dcatalina.home="\"$CATALINA_HOME\"" \
-Djava.io.tmpdir="\"$CATALINA_TMPDIR\"" \
org.Apache.catalina.startup.Bootstrap "$@" start \
>> "$CATALINA_OUT" 2>&1 "&"
したがって、そのvarをどこかに設定するか、または起動スクリプトを使用せずにTomcatを起動します。