Linux服务器运维:使用Crontab定期清理tomcat日志

#! /bin/bash

tomcat_home=/opt/ssh-tc-server
#tomcat_home=/opt/cleanlog/server
SHUTDOWN=$tomcat_home/bin/shutdown.sh
STARTTOMCAT=$tomcat_home/bin/startup.sh
TMPLOGDIR=/oraarch/tmplog
date30=$(date -d "30 day ago" +%Y-%m-%d)

echo "`date` 关闭tomcat..." >> /opt/cleanlog/restart.log
$SHUTDOWN
ps -ef |grep tomcat |grep $tomcat_home |grep -v 'grep'|awk '{print $2}' | xargs kill -9
#先使用tomcat本身的shutdown命令关闭,再用杀进程的方式补偿,做到真正关闭tomcat
echo "`date` tomcat已关闭" >> /opt/cleanlog/restart.log

echo "`date` 清理tomcat日志..." >> /opt/cleanlog/restart.log
#删除日志文件
find $tomcat_home/logs/ -mtime +30 -name "*.log" -exec rm -rf {} \;
find $tomcat_home/logs/ -mtime +30 -name "*.txt" -exec rm -rf {} \;
#find $tomcat_home/logs/ -mtime +30 -name "*.log*" -exec rm -rf {} \;
find $tomcat_home/webapps/eapes-service/WEB-INF/logs/ -mtime +30 -name "*.log*" -exec rm -rf {} \;
find $tomcat_home/webapps/eapes-web/WEB-INF/logs/ -mtime +30 -name "*.log*" -exec rm -rf {} \;
#截断catalina.out
echo "`date` -------开始截断catalina.out-------" >> /opt/cleanlog/restart.log
echo $date30 >> /opt/cleanlog/restart.log
cp /opt/ssh-tc-server/logs/catalina.out /oraarch/tmplog
lines=$(grep -n "$date30" "$TMPLOGDIR/catalina.out" |tail -n 1| cut -d ":"  -f1)
echo $lines
if [[ $lines -ge 1 ]] ;then
sed -i '1,'$lines'd' $TMPLOGDIR/catalina.out
echo "`date` -------Delete Success-------" >> /opt/cleanlog/restart.log
else echo "`date` -------No content delete-------" >> /opt/cleanlog/restart.log
fi
echo "`date` -------结束截断catalina.out-------" >> /opt/cleanlog/restart.log

rm -f /opt/ssh-tc-server/logs/catalina.out
mv /oraarch/tmplog/catalina.out /opt/ssh-tc-server/logs/
echo "`date` tomcat日志清理完毕" >> /opt/cleanlog/restart.log

sleep 5
echo "`date` 启动tomcat..." >> /opt/cleanlog/restart.log
cd $tomcat_home/bin
./startup.sh
echo "`date` tomcat启动完毕" >> /opt/cleanlog/restart.log

#看启动日志
#tail -f $tomcat_home/logs/catalina.out


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值