Linux Tomcat7 catalina.out日志文件切割

2021-02-20 12:29发布

Tomcat的catalina.out没有做分割随着时间推移会越来越大,当文件过大的时候查看日志就非常不方便了,因此我们可以借助第三方工具对日志做切割管理。

cronolog 是一个简单的过滤程序,读取日志文件条目从标准输入和输出的每个条目并写入指定的日志文件的文件名模板和当前的日期和时间,下面介绍的是cronolog 的安装和配置。

1.cronolog安装

因为目前cronolog的wget通道无法访问了,这里我们使用yum安装。

  yum install cronolog 

完成后我们通过which cronolog可以看到cronolog已经安装到了/usr/sbin/cronolog(安装路径后面会用到)

 2.catalina.sh配置

 CATALINA_OUT="$CATALINA_BASE"/logs/catalina.out 

改为

 CATALINA_OUT="$CATALINA_BASE"/logs/catalina.%Y-%m-%d.out 

将touch "$CATALINA_OUT"注释掉

org.apache.catalina.startup.Bootstrap "$@" start \
>> "$CATALINA_OUT" 2>&1 "&"

改为

org.apache.catalina.startup.Bootstrap "$@" start 2>&1 \
| /usr/sbin/cronolog "$CATALINA_OUT" >> /dev/null &

重启Tomcat

日志切割成功!

附:tomcat9 catalina.sh配置

touch "$CATALINA_OUT"
 catalina_out_command=">> \"$CATALINA_OUT\" 2>&1"

改为

#touch "$CATALINA_OUT"
catalina_out_command="| /usr/sbin/cronolog \"$CATALINA_OUT\" 2>&1"

其余步骤与tomcat7的配置相同

标签: