运维-重复启动服务,获取启动时间的简单方法
今天进行大量的机器重启操作,验证启动服务的时间以及是否存在问题:
编写一个比较简单的脚本为:
export starttime=1
while true ; 
do 
count2=$(lsof -i:5200|wc -l)
echo $count2 "显示为0 说明正在重启服务"
echo  "这是第"   $starttime  "次启动"
if [[ $count2 != 0  ]];then
              echo $count2
              cd /deploy
              echo "服务已经启动成功, 延迟十秒重新启动服务"
              date
              sleep 10
              lsof -i:5200 |awk '{print $2}' |xargs kill -9 
              echo "关闭服务成功,延迟五秒重启服务"
              sleep 5
              cd /gscloud && nohup ./startup-linux.sh >> /deploy/parallel.log &
              echo  "这是第"   $starttime  "次启动"
              starttime=$starttime+1
 fi
sleep 10
done
然后可以使用如下命令查看服务是否正常,以及是否有失败的su信息
cat parallel.log |grep -E '(Failed to start|successful)'