切分 Tomcat 的 catalina.out 文件,解决日志文件过大的问题

原文:http://unmi.cc/split-tomcat-catalina-out-file

 

 Linux 下使用 cronolog 工具来切分 catalina.out

这里重点介绍这种方法,具体步骤如下:

1. 下载安装 cronolog,它的主页 http://cronolog.org . 下载的是源码,安装过程就是 ./configure, make, make install,最后一步可直接把 src/cronolog 执行文件拷入到某个适合的目录,如 /usr/local/sbin/ 目录

2. 编辑 bin/catalina.sh 文件

    1)找到下面行并把它用 # 注释掉

touch "$CATALINA_BASE"/logs/catalina.out

    在新 Tomcat7 的 bin/catalina.sh 文件要注释的行是

touch "$CATALINA_OUT"

    2)替换下面的行(有两处,不过一般在 -security 中的那一行不需要去关注,不妨两处全替换了)

>> "$CATALINA_BASE"/logs/catalina.out 2>&1 &
 

    为

2>&1 |/usr/local/sbin/cronolog "$CATALINA_BASE/logs/catalina-%Y-%m-%d.out" &

在 Tomcat7 的 bin/catalina.sh 中是需要替换行是

>> "$CATALINA_OUT" 2>&1 "&"

替换后该行的内容与上面是一样的。

为什么 Tomcat7 后会有所不同,因为在它的 catalina.sh 文件中有如下定义

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

3. 保存 catalina.sh 文件,重启 Tomcat 即可。

以后看到 $TOMCAT_HOME/logs/ 下的就是 catalina-2016-09-16.out, catalina-2016-09-17.out ...... 一系列文件,好像 cronolog 又没提供方式来控制归档的日志文件个数。

posted @ 2016-07-27 19:17  陈其苗  阅读(6079)  评论(0编辑  收藏  举报