想找RedHat Linux的shell脚本,用于检测服务器的IP、丢包率,当丢包率超过40%时Email告警,谢谢!
目前只有检测IP是否畅通的,想修改脚本增加检测服务器IP的掉宝率的,比如掉宝率超过40%触发Email通知,掉包80%出发Email通知,麻烦帮忙修改一下吧,谢谢!rma...
目前只有检测IP是否畅通的,想修改脚本增加检测服务器IP的掉宝率的,比如掉宝率超过40%触发Email通知,掉包80%出发Email通知,麻烦帮忙修改一下吧,谢谢!
rmail=12345@qq.com
export LANG=zh_CN.UTF-8
ping -c5 192.168.1.10 &>/dev/null
if [ "$?" != "0" ]; then
echo "`date +"%Y-%m-%d %H:%M:%S"` IP地址:192.168.1.10 网络不通,请检查网络!" >>/tmp/pkgloss.txt
mail -s "测试IP网络异常报警" $rmail</tmp/pkgloss.txt
fi
echo "" >/tmp/pkgloss.txt 展开
rmail=12345@qq.com
export LANG=zh_CN.UTF-8
ping -c5 192.168.1.10 &>/dev/null
if [ "$?" != "0" ]; then
echo "`date +"%Y-%m-%d %H:%M:%S"` IP地址:192.168.1.10 网络不通,请检查网络!" >>/tmp/pkgloss.txt
mail -s "测试IP网络异常报警" $rmail</tmp/pkgloss.txt
fi
echo "" >/tmp/pkgloss.txt 展开
2个回答
展开全部
解答:
#!/bin/bash
rmail=12345@qq.com
export LANG=zh_CN.UTF-8
ping -c50 192.168.1.10 >/tmp/ping.txt
if [ "$?" != "0" ]; then
echo "`date +"%Y-%m-%d %H:%M:%S"` IP地址:192.168.1.10 网络不通,请检查网络!" >>/tmp/pkgloss.txt
mail -s "测试IP网络异常报警" $rmail</tmp/pkgloss.txt
fi
loss1=`cat /tmp/ping.txt |grep loss|awk '{print $6}'|awk -F% '{print $1}'`
if [ $loss1 -gt 40 ]; then
echo "`date +"%Y-%m-%d %H:%M:%S"` IP地址:192.168.1.10 丢包率超过40" >>/tmp/pkgloss.txt
mail -s "测试IP网络异常报警" $rmail</tmp/pkgloss.txt
fi
if [ $loss1 -gt 80 ]; then
echo "`date +"%Y-%m-%d %H:%M:%S"` IP地址:192.168.1.10 丢包率超过80" >>/tmp/pkgloss.txt
mail -s "测试IP网络异常报警" $rmail</tmp/pkgloss.txt
fi
echo "" >/tmp/pkgloss.txt:
更多追问追答
追问
我测试了,还是不行呢,if [ "$?" != "0" ];这个时候可以发出来邮件,其他掉包的情况就发不出来,和之前的情况一样!
追答
应该不会啊,
你可以将/tmp/ping.txt中loss直接改成41或者 81
你的要求是超过40和80才发送邮件。
所以是-gt。如果你尝试文本中是40,那要改成-ge
发送邮件只和判断有关,如果你第一段可以发送的话。
展开全部
ping -c5 192.168.1.10 > result.txt
results=tail -n 1 result.txt | awk '{print $7}'
if [$reults -ge 40%]
用这三行替换你的ping语句和if条件就行了
results=tail -n 1 result.txt | awk '{print $7}'
if [$reults -ge 40%]
用这三行替换你的ping语句和if条件就行了
追问
不行,掉包的时候还是不能发出邮件!
追答
你把代码直接粘过去的吧?
在上面三行代码中,数字1是文件倒数第一行的意思,打开你的result.txt看看丢包信息是不是倒数第一行,不是的话按照实际情况修改一下;
$7是丢包信息所在行中丢包率对应的列数,查可能result看看是不是第七列,不是的话按照实际情况修改一下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询