tomcat默认日志文件为catalina.out,随着系统运行时间的增加,该日志文件大小会不断增大,甚至增大到G级。不仅会导致我们无法使用常规工具查找系统问题,而且会影响tomcat性能(比如我在维护中遇到的出现web页面文件上传<swfupload>错误:404)。

采用cronlolog工具对日志拆分的方式处理该问题

1、下载cronolog工具,我下载的版本是cronolog-1.6.2

2、将下载好的文件解压,tar xvzf cronolog-1.6.2.tar.gz

3、切换到解压后的文件目录下:cd cronolog-1.6.2

4、初始化和编译安装

./configure  --prefix=/usr/local/cronolog

#make

#make install

#ln -s  /usr/local/cronolog/sbin/* /usr/local/sbin/

5、查看安装版本

#cronolog --version

6、修改tomcat的启动文件(tomcat目录/bin/catalina.sh)

vi catalina.sh

(1)修改输出日志路径

修改:

 if [ -z "$CATALINA_OUT" ] ; then

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

fi

为:

    if [ -z "$CATALINA_OUT" ] ; then

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

fi

(2)删除生成日志文件

注释:

touch "$CATALINA_OUT"

   为:

#touch "$CATALINA_OUT"

(3)修改启动脚本参数(两项)

修改:

      org.apache.catalina.startup.Bootstrap "$@" start \

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

    为:

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

      | /usr/local/sbin/cronolog "$CATALINA_OUT" >> /dev/null &

7、重启tomcat

tomcat输出日志文件分割成功,输出log文件格式为:catalina.2015-06-30.out