当前位置:首页 > linux > 正文内容

shell ping监控服务器是否死机/方糖通知

admin5年前 (2020-02-04)linux5743
有时候服务器经常死机,但是死机我们又没办法知道,这时候需要一个自动脚本来帮助我们监控服务器是否运行
在linux 下 vim ./ip.sh
添加下面的代码并保存退出,设置文件权限  chmod 777 ip.sh
#!/bin/bash
SCKEY="SCU4316******************************" #方糖通知的SCKEY
IP_array=("f.cqroom.cn" "b.cqroom.cn" "c.cqroom.cn" "d.cqroom.cn" "e.cqroom.cn" "f.cqroom.cn" "g.cqroom.cn" "h.cqroom.cn" "i.cqroom.cn" "j.cqroom.cn" "k.cqroom.cn")
IP_send=( )
IP_send_num=( )
for((i=0;i<${#IP_array[@]};i++));#初始化数组
do
	IP_send[$i]=0
	IP_send_num[$i]=0
done
while :
do
   for((i=0;i<${#IP_array[@]};i++));
	do
		ping -c 1 ${IP_array[i]} &>/dev/null            #三个ping有一个能通,说明服务器正常
		a=$?
		sleep 2
		ping -c 1 ${IP_array[i]} &>/dev/null
		b=$?
		sleep 2
		ping -c 1 ${IP_array[i]} &>/dev/null
		c=$?
		sleep 2
		DATE=$(date +%F" "%H:%M)
		echo "$DATE ${IP_array[i]} $a $b $c"
		if [ $a -ne 0 -a $b -ne 0 -a $c -ne 0 ];then
			if [ ${IP_send_num[$i]} -gt 0 ];then #判断是否多次ping不通  递加延时通知
				((IP_send_num[$i]--))
			else
				IP_send_num[$i]=${IP_send[$i]}
				curl -m 10 https://sc.ftqq.com/$SCKEY.send?text=服务器连不上了\&desp=第${IP_send[$i]}次通知%20时间:$(date "+%Y-%m-%d")%20$(date "+%H:%M:%S")%20域名:${IP_array[i]}
				echo https://sc.ftqq.com/$SCKEY.send?text=服务器连不上了\&desp=第${IP_send[$i]}次通知%20时间:$(date "+%Y-%m-%d")%20$(date "+%H:%M:%S")%20域名:${IP_array[i]}
				echo "$DATE ${IP_array[i]} $a $b $c" > iplog.txt
			fi
			((IP_send[$i]++))
		else
			IP_send[$i]=0 #有一次ping通  复位计数
		fi
	done
done



扫描二维码推送至手机访问。

版权声明:本文由视觉博客发布,如需转载请注明出处。

本文链接:https://feelsight.cn/post/109.html

“shell ping监控服务器是否死机/方糖通知” 的相关文章

树莓花生壳内网映射官方教程失败解决

相信很多pi有都有外网访问树莓派上的服务的需求,但是现在公网ip成了稀缺资源,多数用户都是局域网ip。今天回家发现自己的公网ip也被改成内网了,再也不能随心所欲的访问树莓派了。之前在微信服务器教程的帖子里,很多pi友都会问我,没有公网ip怎么办,我都会推介他们使用花生壳内网版,但是我自己也不能确定是...

在树莓派/linux上使用阿里云DNS解析作为DDNS使用

环境准备 Python的2.7+ SDK安装 使用PIP进行安装 使用如下命令来安装SDK: sudo pip install aliyun-pyth...

Linux下python2.7安装pip

首先下载并安装setuptools: wget --no-check-certificate https://bootstrap.pypa.io/ez_setup.py sudo python ez_setup.py --insecure 再到python官网下载pip安装包,...

centos 7 更改网络设置

centos 7 更改网络设置

使用交互式界面来配置网络。在终端中使用命令: $nmtui...

结合宝塔linux面板 centos6 7一键zabbix安装脚本!

结合宝塔linux面板 centos6 7一键zabbix安装脚本!

zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。铁网维就不做过多的介绍,详情可以百度了解! 本次铁网维结合宝塔linux面板的环境来安装zabbix3.0.1 由于安装步骤比较多我已经写成脚本省去90%的配置...

centos7 安装zabbix客户端并监控

centos7 安装zabbix客户端并监控

 在上面博客中我们已经安装了zabbix的server端,如果我们需要对某台机器进行监控,还需要在被监控的机器上面安装客户端,这样才能进行监控,下面就给大家介绍一下agent端的安装教程   第一、导入源   sudo rpm -ivh http://rep...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。