centos传统部署下Tomcat自动恢复脚本

自动恢复Tomcat

定时任务中定时执行即可,重复性工作尽量交给机器去做,尽量做到代码管业务

#/bin/bash
#2019-1-23

. /etc/init.d/functions
. /etc/profile
. /etc/bashrc
. /root/.bashrc
. /root/.bash_profile

#设置访问的url
ip=127.0.0.1
pid=/usr/local/tomcat/bin
bak=/data/backup
log=catalina.out
lujing=/usr/local/tomcat/logs/
size=`du -s  $lujing$log|awk '{print $1}'`
#日志多大进行分割,kb为单位
rz=200000
#日志保留天数
rzbak=15


[ ! -f /tmp/jktomcat.txt ] && touch /tmp/jktomcat.txt

pd(){
if [ $? -eq 0 ]
then
    action "-------- $(date +%F--%R:%S)------ " /bin/true 
else
    action "-------- $(date +%F--%R:%S)------  " /bin/false
fi
}

restart(){
       killall -9 java  &>/dev/null
       /bin/bash $pid/startup.sh &>/dev/null
       pd
       exit 1
}

[ ! -d $bak ] && mkdir -p $bak
if [ $size -ge $rz ]
then 
    cd $lujing && tar zcf $bak/$(date +%F)-$RANDOM-$log.tar.gz  $log   && >$lujing/$log
    echo "log-$size-$(date +%F--%R:%S)" >>/tmp/jktomcat.txt
fi

find $bak  -name "*.tar.gz" -mtime +$rzbak|xargs rm -rf
find $lujing  -name "*log*" -mtime +$rzbak|xargs rm -rf


pid1=`ps -ef |grep java |grep -v grep |wc -l`
if [ $pid1 -eq 0 ]
then
    restart
fi

zhi=`curl -s -I $ip --speed-time 15|awk 'NR==1{print $2}'`
case "$zhi" in    
200)
   exit 0  
   ;;
302)
   exit 0
   ;;
  *)
   restart 
   ;;
esac 
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值