一、背景
Apache Tomcat是由Apache Software Foundation(ASF)开发的一个开源Java WEB应用服务器。apache服务器默认日志文件是不分割的,当出现错误时,一个整文件既不易于管理,也不易于分析统计。
二、目的
将日志文件格式.log 更改为.out
三、具体操作
方法一:使用cronolog
链接:RPM resource cronolog (rpmfind.net)
下载cronolog:
#yum install http://rpmfind.net/linux/epel/7/x86_64/Packages/c/cronolog-1.6.2-14.el7.x86_64.rpm -y
[root@localhost ~]# cd /usr/local/tomcat/logs
[root@localhost logs]# ls
catalina.2022-01-04.log localhost.2022-01-05.log
catalina.2022-01-05.log localhost_access_log.2022-01-04.txt
catalina.out localhost_access_log.2022-01-05.txt
host-manager.2022-01-04.log manager.2022-01-04.log
host-manager.2022-01-05.log manager.2022-01-05.log
localhost.2022-01-04.log
[root@localhost logs]# cd ../bin/[root@localhost bin]# vim catalina.sh
更改内容如下:(两处都要更改)
org.apache.catalina.startup.Bootstrap "$@" start 2>&1 \
| /usr/sbin/cronolog "$CATALINA_BASE"/logs/catalina.%Y-%m-%d.out>>/dev/null &
重启服务:
[root@localhost ~]# /usr/local/tomcat/bin/startup.sh
再次查看日志:
[root@localhost ~]# ls /usr/local/tomcat/logs
方法二:使用rotatelogs
rotatelogs是apache 自带的工具。
[root@localhost bin]# which rotatelogs
/usr/sbin/rotatelogs
[root@localhost bin]# yum provides */rotatelogs
[root@localhost bin]# vim catalina.sh
替换下面的行(有两处,不过一般在 -security 中的那一行不需要去关注,不妨两处全替换了)
>> "$CATALINA_BASE"/logs/catalina.out 2>&1 &
替换为:
2>&1 | /usr/sbin/rotatelogs "$CATALINA_BASE"/logs/catalina-%Y-%m-%d.out 86400 480 &
之后重启服务即可。