Shell脚本监控线上端口服务是否正常开启


前言:

  线上服务正常可用是至关重要的,当正在运行的某个端口服务异常停止,我们期望定时脚本可以自动启动,而无需遇到问题再人为的启动。

  例如:监听Mysql服务是否正常,我们通常的思路是检查3306端口是否正常启动的方式来监听。

方法:

以Mysql服务,端口3306为例,shell脚本写法为:

#!/bin/bash
#监控Mysql服务是否开启
 
port=`netstat -nlt|grep 3306|wc -l`
if [ $port -ne 1 ]
then
 /etc/init.d/mysqld start
else
 echo "MySQL is running"
fi

以webSocket服务,端口8820为例,shell脚本写法为:

#!/bin/bash
#监控webSocket服务是否开启
 
port=`netstat -nlt|grep 8820|wc -l`
if [ $port -ne 1 ]
then
  $(cd /home/websocket && php start.php start -d)
else
 echo "webSocket is running"
fi

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM