日本电子维修技术 测试网络稳定性的小脚本
测试网络稳定性的小脚本 by 唯心铅笔
因为这段时间需要选择IDC,因此需要做很多方面的测试,其中icmp的稳定性是非常重要的测试网络稳定性的手段。而为了对领导有所交代,需要有比较直观的图表,因此想到利用rrdtool强大的绘图能力来做。但是如果装个cacti又有点劳师动众了,只能自己动手写个小脚本来完成任务了。
脚本分两段,这是因为rrdtool的特性导致,先要创建rrd文件–create_ping.sh
#!/bin/sh
rrdfilepath="/opt/rrdtool/rrddir/"
rrdimgpath="/opt/rrdtool/img/"
rrdtoolcmd="/usr/local/rrdtool-1.2.15/bin/rrdtool"
rrdfilename="gzdxtogzyd"
if [ ! -d $rrdfilepath ]
then
mkdir -p $rrdfilepath
fi
if [ ! -d $rrdimgpath ]
then
mkdir -p $rrdimgpath
fi
$rrdtoolcmd create \
${rrdfilepath}${rrdfilename}.rrd \
--step 300 \
DS:ping:GAUGE:600:0:5000 \
RRA:AVERAGE:0.5:1:600 \
RRA:AVERAGE:0.5:6:700 \
RRA:AVERAGE:0.5:24:775 \
RRA:AVERAGE:0.5:288:797 \
RRA:MIN:0.5:1:600 \
RRA:MIN:0.5:6:700 \
RRA:MIN:0.5:24:775 \
RRA:MIN:0.5:288:797 \
RRA:MAX:0.5:1:600 \
RRA:MAX:0.5:6:700 \
RRA:MAX:0.5:24:775 \
RRA:MAX:0.5:288:797 \
RRAAST:0.5:1:600 \
RRAAST:0.5:6:700 \
RRAAST:0.5:24:775 \
RRA:LAST:0.5:288:797
然后就需要采集数据更新rrd文件,然后绘制图形,流程很简单– update_ping.sh
#!/bin/sh
HOMEDIR="/opt/rrdtool"
rrdfilepath="/opt/rrdtool/rrddir/"
rrdimgpath="/opt/rrdtool/img/"
htmlfilepath="/opt/rrdtool/html/"
rrdtoolcmd="/usr/local/rrdtool-1.2.15/bin/rrdtool"
rrdfilename="gzdxtogzyd.rrd"
rrdimgpre="gzdxtogzyd"
IP="1.1.1.1"
sleeptime=60
i=1
title="GZDX To GZYD"</code>
while [ $i -eq 1 ]
do
pingdata=`ping -c 1 $IP |grep icmp_seq |awk -F"=" '{print $4}' |awk '{print $1}'`
nowtimestamp=`/bin/date +%s`
$rrdtoolcmd update ${rrdfilepath}${rrdfilename} $nowtimestamppingdata
$rrdtoolcmd graph ${rrdimgpath}${rrdimgpre}_daily.png \
--imgformat=PNG \
--start=-86400 \
--end=-300 \
--title="$title daily" \
--base=1000 \
--height=120 \
--width=500 \
--alt-autoscale-max \
--lower-limit=0 \
--vertical-label="milliseconds" \
DEF:a="${rrdfilepath}${rrdfilename}":ping:AVERAGE \
AREA:a#FFF200:"" \
GPRINT:a:LAST:"Current\:%8.2lf%s" \
GPRINT:a:MIN:"Minimum\:%8.2lf%s" \
GPRINT:a:MAX:"Maximum\:%8.2lf%s"
$rrdtoolcmd graph ${rrdimgpath}${rrdimgpre}_weekly.png \
--imgformat=PNG \
--start=-604800 \
--end=-1800 \
--title="$title weekly" \
--base=1000 \
--height=120 \
--width=500 \
--alt-autoscale-max \
--lower-limit=0 \
--vertical-label="milliseconds" \
DEF:a="${rrdfilepath}${rrdfilename}":ping:AVERAGE \
AREA:a#FFF200:"" \
GPRINT:a:LAST:"Current\:%8.2lf%s" \
GPRINT:a:MIN:"Minimum\:%8.2lf%s" \
GPRINT:a:MAX:"Maximum\:%8.2lf%s"
$rrdtoolcmd graph ${rrdimgpath}${rrdimgpre}_monthly.png \
--imgformat=PNG \
--start=-2678400 \
--end=-7200 \
--title="$title monthly" \
--base=1000 \
--height=120 \
--width=500 \
--alt-autoscale-max \
--lower-limit=0 \
--vertical-label="milliseconds" \
DEF:a="${rrdfilepath}${rrdfilename}":ping:AVERAGE \
AREA:a#FFF200:"" \
GPRINT:a:LAST:"Current\:%8.2lf%s" \
GPRINT:a:MIN:"Minimum\:%8.2lf%s" \
GPRINT:a:MAX:"Maximum\:%8.2lf%s"
sleep $sleeptime
done
这样,只要执行:
$ create_ping.sh
$ update_ping.sh >/dev/null &
评论
值得探讨一下看看
评论
又来研究一下
评论
在读研究
评论
看不懂,这是什么脚本?
评论
代码不全了吧,里面还有表情。
评论
可能跟论坛的表情代码有冲突了看到几个表情了
其实用ping命令看我觉得更加简单 电路 电子 维修 求创维42c08RD电路图 评论 电视的图纸很少见 评论 电视的图纸很少见 评论 创维的图纸你要说 版号,不然无能为力 评论 板号5800-p42ALM-0050 168P-P42CLM-01 电路 电子 维修 我现在把定影部分拆出来了。想换下滚,因为卡纸。但是我发现灯管挡住了。拆不了。不会拆。论坛里的高手拆解过吗? 评论 认真看,认真瞧。果然有收
·日本留学生活 求个大阪合租
·日本留学生活 自家房招租求
·日本留学生活 东京地区出9成新lv钱包
·日本育儿教育 孩子从国内过来如何学习日语
·日本育儿教育 明年四月横滨招月嫂
·日本育儿教育 请问咋让娃突破识字关?感谢分享中文共读和学习经验的妈妈
·中文新闻 东区明星迈克尔·格列柯,53 岁,将在第一次出生两年后第二次
·中文新闻 《爱情岛》明星卡米拉·瑟洛和杰米·朱维特在透露即将迎来第三