Php-worker重启脚本
跳到导航
跳到搜索
mq_res
#score-addScore-high 队列大于 500 重启phpwork # php work and mq 机器不在同一台上 #有可能的话 另外两个mq 机器也要check 一下 [root@mq01 sh]# cat mq_res.sh #!/bin/bash #Author: linuxsa.org docker ps | grep rabbitmqCluster01 #if [ $? -eq 0 ] if [ $? -ne 0 ] then echo "No rabbitmq was found ,exit now" exit 1 fi qu=` docker exec -i rabbitmqCluster01 rabbitmqadmin --username=admin --password=886 list queues | grep score-addScore-high |awk '{print $4}'` #if [ $qu -eq 0 ] if [ $qu -gt 50 ] #if [ $qu -gt 500 ] #if $qu gt 500 then echo " qu is 500,and then restart the score-high" echo "*****" function restartmq { salt 'prod-sns-es' cmd.run 'docker ps | grep php-worker' if [ $? -ne 0 ] then echo "No phpworker was found ,exit now" exit 1 fi salt 'prod-sns-es' cmd.run 'docker exec -i docker-for-services_php-worker_1 supervisorctl restart production1.rabbitmq.recovery.addScoreHigh:production1.rabbitmq.recovery.addScoreHigh_00' salt 'prod-sns-es' cmd.run 'docker exec -i docker-for-services_php-worker_1 supervisorctl restart production1.rabbitmq.recovery.addScoreHigh:production1.rabbitmq.recovery.addScoreHigh_01' salt 'prod-sns-es' cmd.run 'docker exec -i docker-for-services_php-worker_1 supervisorctl restart production1.rabbitmq.recovery.addScoreHigh:production1.rabbitmq.recovery.addScoreHigh_02' salt 'prod-sns-es' cmd.run 'docker exec -i docker-for-services_php-worker_1 supervisorctl restart production1.rabbitmq.recovery.addScoreHigh:production1.rabbitmq.recovery.addScoreHigh_03' echo "mq has restart " DATE_TIME=`date +"%Y-%m-%d %H:%M.%S"` echo "${DATE_TIME}" >>/data/logs/timlist } restartmq; fi
基础
-eq //等于 -ne //不等于 -gt //大于 (greater ) -lt //小于 (less) -ge //大于等于 -le //小于等于 命令的逻辑关系: 在linux 中 命令执行状态:0 为真,其他为假 逻辑与: && 第一个条件为假时,第二条件不用再判断,最终结果已经有; 第一个条件为真时,第二条件必须得判断; 逻辑或: || 逻辑非: !