首先我们总结一下我们常用的对应用监控分析有哪些方式。
一、我们可以利用操作系统的命令:
网络命令:ping、nslookup、nm-tool、dig、telnet、nc、curl、tracertroute
监控进程:ps、netstat、pgrep
二、利用客服端命令、工具等
现在我们用shell脚本简单实现一个判断Nginx服务状态。
首先我们实现对Nginx服务的状态分析,我们这里可以使用curl命令获取状态码来分析状态。
###################################
# Author:IT小窝 #
# File_Name:check_server.sh #
###################################
#!/bin/bash
output=$(tput sgr0)
#定义监控的主机地址,可根据自己需要改变
nginx_server='http://127.0.0.1'
#封装Nginx服务监控的函数
Check_Nginx()
{
#使用curl获取状态码
Status_code=$(curl -m 5 -s -w %{http_code} ${nginx_server} -o /dev/null
)
#判断状态码如果等于000或者大于500的我们就输出错误,否则我们输出内容
if [ $Status_code -eq 000 -o $Status_code -ge 500 ]; then
echo -e '\E[33m' "检查http服务错误,错误状态码是:" $output $Status_code
else
http_content=$(curl -s ${nginx_server})
echo -e '\E[32m' "http服务正常,状态码是:" $output $Status_code
fi
}
#调用一下
Check_Nginx
最后看一下效果: