首页 > 代码库 > Tomcat catalina-deamon.out 日志切割 每天生成一个文件

Tomcat catalina-deamon.out 日志切割 每天生成一个文件

Tomcat 使用 jsvc 以守护进程的方式启动(daemon.sh )。这样tomcat自身将会生成另外一个日志文件(catalina-daemon.out),而不是之前的catalina.out,而且catalina-daemon.out日志不会自动切割,会越来越大。

以前遇到过一个问题,就是网站突然访问空白,排查到最后发现是当前进行了网站打包备份操作,有一个超过2GB的压缩包。删掉后立马页面访问正常。具体原因还不清楚。

同时从运维角度和日志分析角度思考,日志文件最好做切割处理,并日志文件不宜过大。

 

想了想,还是使用linux的crontab的定时任务吧,

编写一个shell脚本,脚本放到 /etc/cron.daily目录下,代码如下:

#!/bin/bashthedate=`date --rfc-3339=date`predate=`date +%Y-%m-%d --date="-7 day"`rmfile="/xxxx/server/tomcat/logs/catalina-daemon.${predate}.out"outfile="/xxxx/server/tomcat/logs/catalina-daemon.out"if [ -f ${rmfile} ];then   rm -f ${rmfile}fiif [ -f ${outfile} ];then   cp ${outfile} /xxxx/server/tomcat/logs/catalina-daemon.${thedate}.out   echo "" > ${outfile}fiexit 0

好了,现在就不用担忧日志文件过大问题了!

同时上面的脚本会每天运行一次,并删除七天之前的日志文件,具体时间,可自己设定。

 

PS:

http://www.cnblogs.com/xd502djj/archive/2010/12/29/1919478.html

http://www.jb51.net/article/34332.htm

http://www.cnblogs.com/panblack/archive/2013/05/30/split_tomcat_catalina_out.html

 

Tomcat catalina-deamon.out 日志切割 每天生成一个文件