shell-004:检测机器存活或者网络陡动情况!
Posted 夜雨-寄情于曲
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell-004:检测机器存活或者网络陡动情况!相关的知识,希望对你有一定的参考价值。
如下图情况,我们监测的就是此数据,当大于50%了,我们就可以设置告警等!
#!/bin/bash # 用ping检测一台机器的存活或者网络波动情况 # 检测机器的丢包率来检测网络波动情况!! n=`ping -c3 8.8.8.8|grep \'0% packet loss\'|awk -F \'%\' \'{print $1}\'|awk \'{print $NF}\'` if [ $n -gt 50 ];then # 当丢包率大于50,我们认为机器有问题。下面的mail发送命令我是随便写的。至于mail怎么发送邮件,自己网上搜索。或者参考我的博客! mail -s \'网络有问题\' xxxxxx@163.com fi exit
脚本写好了,我们还要去做一个计划任务。或者我们可以直接把脚本改成一个死循环,30秒执行一次!!
下面是按照上面的脚本添加了一个死循环。
#!/bin/bash # 用ping检测一台机器的存活或者网络波动情况 # 检测机器的丢包率来检测网络波动情况!! n=`ping -c3 8.8.8.8|grep \'0% packet loss\'|awk -F \'%\' \'{print $1}\'|awk \'{print $NF}\'`
## 这里我添加了一个判断脚本的正常情况,可省略
if [ -z $n ];
then
echo "脚本有问题,发送邮件并且退出"
mail XXXXXXXXXXXXXXXXXXXXXXXXX
exit
else
n1=`echo $n|sed \'s/[0-9]//g\'`
if [ -n $n ]
then
echo "脚本有问题,发送邮件并且退出"
mail XXXXXXXXXXXXXXXXXXXXXXXXX
exit
while do if [ $n -gt 50 ];then # 当丢包率大于50,我们认为机器有问题。下面的mail发送命令我是随便写的。至于mail怎么发送邮件,自己网上搜索。或者参考我的博客! mail -s \'网络有问题\' xxxxxx@163.com fi sleep 30 done
以上是关于shell-004:检测机器存活或者网络陡动情况!的主要内容,如果未能解决你的问题,请参考以下文章