如何移动 tomcat 日志文件位置



我正在我的 Linux 机器上运行 tomcat,现在我想将此默认日志文件夹目录移动到其他位置。

像/usr/log

Please find the below logs view structure.
root@linux-vm:/opt/tomcat/apache-tomcat-9.0.26/logs# ls -lrt
-rw-r----- 1 root root 0 Dec 26 06:01 manager.2019-12-26.log
-rw-r----- 1 root root 0 Dec 26 06:01 host-manager.2019-12-26.log
-rw-r----- 1 root root 0 Dec 26 06:01 localhost_access_log.2019-12-26.txt
-rw-r----- 1 root root 2481 Dec 26 06:12 localhost.2019-12-26.log
-rw-r----- 1 root root 31443 Dec 26 06:12 catalina.2019-12-26.log
-rw-r----- 1 root root 1042803 Dec 26 06:24 catalina.out

我们必须在 Tomcat 中配置两个文件以将所有日志文件移动到一个地方。

vi server.xml
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="/root/user/logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t &quot;%r&quot; %s %b" />
vi logging.properties
1catalina.org.apache.juli.AsyncFileHandler.level = FINE
1catalina.org.apache.juli.AsyncFileHandler.directory = /root/user/logs
1catalina.org.apache.juli.AsyncFileHandler.prefix = catalina.
1catalina.org.apache.juli.AsyncFileHandler.encoding = UTF-8
2localhost.org.apache.juli.AsyncFileHandler.level = FINE
2localhost.org.apache.juli.AsyncFileHandler.directory = /root/user/logs
2localhost.org.apache.juli.AsyncFileHandler.prefix = localhost.
2localhost.org.apache.juli.AsyncFileHandler.encoding = UTF-8
3manager.org.apache.juli.AsyncFileHandler.level = FINE
3manager.org.apache.juli.AsyncFileHandler.directory = /root/user/logs
3manager.org.apache.juli.AsyncFileHandler.prefix = manager.
3manager.org.apache.juli.AsyncFileHandler.encoding = UTF-8
4host-manager.org.apache.juli.AsyncFileHandler.level = FINE
4host-manager.org.apache.juli.AsyncFileHandler.directory = /root/user/logs
4host-manager.org.apache.juli.AsyncFileHandler.prefix = host-manager.
4host-manager.org.apache.juli.AsyncFileHandler.encoding = UTF-8

最后重新启动雄猫以反映上述更改,谢谢。

您可以更改Tomcat日志位置,如下所示:

Linux:

找到 tomcat 的安装位置:<tomcat-base>/conf/logging.properties

catalina.org.apache.juli.AsyncFileHandler.level = FINE
catalina.org.apache.juli.AsyncFileHandler.directory = <add_location_you_prefer>
catalina.org.apache.juli.AsyncFileHandler.prefix = catalina.
localhost.org.apache.juli.AsyncFileHandler.level = FINE
localhost.org.apache.juli.AsyncFileHandler.directory = <add_location_you_prefer>
localhost.org.apache.juli.AsyncFileHandler.prefix = localhost.
manager.org.apache.juli.AsyncFileHandler.level = FINE
manager.org.apache.juli.AsyncFileHandler.directory = <add_location_you_prefer>
manager.org.apache.juli.AsyncFileHandler.prefix = manager.
host-manager.org.apache.juli.AsyncFileHandler.level = FINE
host-manager.org.apache.juli.AsyncFileHandler.directory = <add_location_you_prefer>
host-manager.org.apache.juli.AsyncFileHandler.prefix = host-manager.

最后,您需要更改catalina.out

在 tomcat 基地位置的 bin 目录中Catalina.sh脚本中找到以下代码片段并更改CATALINA_OUT="$CATALINA_BASE"/logs/catalina.out自:

CATALINA_OUT=<add_location_you_prefer>/catalina.out

if [ -z "$CATALINA_OUT" ] ; then
CATALINA_OUT="$CATALINA_BASE"/logs/catalina.out
fi

最新更新