linux运维学习shell脚本监控nginx服务
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux运维学习shell脚本监控nginx服务相关的知识,希望对你有一定的参考价值。
菜鸟学习shell脚本后,动手练手简单小实验,使用shell脚本判断nginx是否正常运行,如果没有运行将nginx服务启动起来。
一、基于进程判断
1、获取nginx进程来判断该服务是否正常启动。
ps -ef | grep nginx | grep -v grep | wc -l 输出进程行数 然后判断是否为2 如果不是说明该服务没有启动。
grep -v grep 用来排除掉您所使用grep产生的进程。
2、shell 脚本编写
先定义一个变量Web
#!/bin/bash
Web=`ps -ef |grep nginx|grep -v grep|wc -l`
if [ $Web -eq 2 ];then
echo "you nginx start"
exit 0
else
service nginx start
exit 1
fi
定义一个变量Web ,然后判断如果不成立,将使用service nginx start启动服务。
二、基于端口的判断
虽然都是获取的数字,但是由于端口不存在的话为空,所以判断是用的是字符串的判断
也就是把判断的运算符使用"="而不是"-eq"
#!/bin/bash
WebPort=`netstat -nlt |grep 80|awk ‘{print $4}‘| cut -d : -f 2`
if [ "$WebPort" = "80" ];then
echo "you nginx start"
exit 0
else
service nginx start
exit 1
fi
当然还有好多方法,也在不断学习和摸索中。(上述脚本对于数据库等其他服务监控也可以)
以上是关于linux运维学习shell脚本监控nginx服务的主要内容,如果未能解决你的问题,请参考以下文章