994  
查询码:00000090
每5秒在最新的日志文件里面匹配相应内容,匹配到就重启程序
作者: wyasw 于 2020年03月29日 发布在分类 / Linux / 常用shell脚本 下,并于 2020年03月29日 编辑
shell

需求:开发要求每5秒在最新的日志里面匹配相应的日志内容,匹配到之后就重启程序。注:程序重启之后会产生新的日志。

#!/bin/bash

logfile=/var/log/bcc_dcoker_err.log

#filename=`ls -t |head -n1|awk '{print $0}'`

sleep=5

function ReDokcer(){

  echo "===========================" >> $logfile

  date +"%Y-%m-%d %H:%M.%S">> $logfile

 

  if [ -d /home/bcchain/log ];then

      cd /home/bcchain/log

      grep -rl "DockerLib Run ContainerStart Error" `ls -t |head -n1|awk '{print $0}'`

      if [ $? -eq 0 ] ;then

          systemctl restart docker && systemctl restart bcchain && systemctl restart tmcore

          echo "Restart docker and bcchain and tmcore." >>$logfile

        else

          echo "Docker is OK." >>$logfile

      fi

    else

      echo "The log directory does not exist." >>$logfile

      exit 1

  fi

}

count=1

until [ $count -gt 12 ];do

   ReDokcer

   sleep $sleep

   count=$((count + 1))

done

exit 0



 推荐知识

 历史版本

修改日期 修改人 备注
2020-03-29 21:01:08[当前版本] wyasw 创建版本

文艺知识分享平台 -V 4.9.5 -wcp
京公网安备100012199188号 京ICP备2021030911号