天天看点

tomcat日志切割

第一种方法:yum 安装cronolog软件

1.yum install cronolog -y 第三方软件

源码包下载地址

<a href="http://download.chinaunix.net/download.php?id=3457&amp;ResourceID=1851">http://download.chinaunix.net/download.php?id=3457&amp;ResourceID=1851</a>

2.修改配置文件。修改前记得备份

[root@tomcat01 sbin]# cat -n /aliyun/tomcat7/bin/catalina.sh

184 #if [ -z "$CATALINA_OUT" ] ; then

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

186 #fi

改为下面的

187 ###################

188 if [ -z "$CATALINA_OUT" ] ; then

189 CATALINA_OUT="$CATALINA_BASE"/logs/tomcat01.$(date +%F).out

190 fi

191 #####################

注释掉373 #touch "$CATALINA_OUT"

386 387 改为一下:

386 org.apache.catalina.startup.Bootstrap "$@" start 2&gt;&amp;1 \

387 | /usr/local/sbin/cronolog "$CATALINA_OUT" &gt;&gt; /dev/null &amp;

395 396 改为一下:

395 org.apache.catalina.startup.Bootstrap "$@" start 2&gt;&amp;1 \

396 | /usr/local/sbin/cronolog "$CATALINA_OUT" &gt;&gt; /dev/null &amp;

注意此两处修改不要注视,注释启动tomcat时会报错。要直接删掉这两处的原内容

[root@tomcat01 logs]# /aliyun/tomcat7/bin/startup.sh

报错:/usr/local/sbin/ 没有cronolog 

[root@tomcat01 logs]# cp /usr/sbin/cronolog /usr/local/sbin/

/aliyun/tomcat7/bin/startup.sh (成功)

如果抱错catalina.sh,说明此脚本文件没有执行权限,所以 chown +x catalina.sh

3.区分不同的tomcat机器的日志方便集中收集tomcat实时日志

[root@tomcat01 logs]# vim /aliyun/tomcat7/bin/catalina.sh

189 ATALINA_OUT="$CATALINA_BASE"/logs/ tomcat01.$(date +%F).out

/aliyun/tomcat7/bin/startup.sh

[root@tomcat01 logs]# find ./ -type f -name "tomcat01.2016-04-22.out"

./tomcat1.2016-04-22.out

./tomcat01.2016-04-22.out

第二种方法源码包编译安装cronolog第三方tomcat日志切割软件

1.源码包下载地址

2.安装过程

cd /aliyun/soft/

rz -y cronolog-1.6.2.tar.gz

ls

tar xf cronolog-1.6.2.tar.gz -C /aliyun/

cd /aliyun/cronolog-1.6.2/

./configure 

echo $?

make &amp;&amp; make install

[root@tomcat02 sbin]# ll /usr/local/sbin/

total 52

-rwxr-xr-x 1 root root 40438 May 12 09:15 cronolog

-rwxr-xr-x 1 root root 9673 May 12 09:15 cronosplit

到此处编译安装完成

3.编辑文件按天切割日志

vim /aliyun/tomcat7/bin/catalina.sh

4.重新启动tomcat生效

[root@tomcat02 sbin]# ll /aliyun/tomcat7/logs/

total 0

[root@tomcat02 sbin]# /etc/init.d/tomcat7 stop

tomcat7 service is stopped! [ OK ]

[root@tomcat02 sbin]# /etc/init.d/tomcat7 start

tomcat7 service is starting! [ OK ]

total 16

-rw-r--r-- 1 root root 4295 May 12 09:34 catalina.2016-05-12.log

-rw-r--r-- 1 root root 0 May 12 09:34 localhost.2016-05-12.log

-rw-r--r-- 1 root root 0 May 12 09:34 localhost_access_log.2016-05-12.txt

-rw-r--r-- 1 root root 4295 May 12 09:34 tomcat02.2016-05-12.out

 本文转自 wjw555 51CTO博客,原文链接:http://blog.51cto.com/wujianwei/2056448