自动化运维之善用zabbix监控网站下载速度
废话不说了,直接上图http://blog.运维网.com/attachment/201304/192038847.png
下面是ping测试
http://blog.运维网.com/attachment/201304/192201255.png
监控模板见附件
监控代码如下(写的不是很好,欢迎各位指导)
[*]#!/usr/bin/env python
[*]# coding=utf8
[*]# Filename: monitor_idc.py
[*]# Last modified: 2013-04-23 16:54
[*]# Author: itnihao
[*]# Mail: itnihao@qq.com
[*]# Description:
[*]
[*]import urllib, urllib2,sys,re
[*]
[*]monitor_item =sys.argv
[*]idc =sys.argv
[*]url="http://www.iqm.cn/index.php/Member/RTTask/getmonitorInfoByAjax"
[*]page_url ="http://www.iqm.cn/index.php/Member/RTTask"
[*]web_monitor ="http://www.baidu.com/"
[*]data ="monitorip="+idc + "&url="+web_monitor+"&host=0.0.0.0&bandwidth=512&task_type=get"
[*]data =data.encode("utf8")
[*]
[*]def web_site_status():
[*] request=urllib2.Request(url,data)
[*] opener =urllib2.build_opener(urllib2.HTTPCookieProcessor())
[*] response =opener.open(request)
[*] the_page =response.read()
[*] values =eval(the_page)
[*]#for v in values:
[*]# for i in v:
[*]# printi, "-------------",v
[*] for v in values:
[*] code=v["time"]
[*] pat =re.compile(r'HTTP.+?OK')
[*] code_status= re.findall(pat, code)
[*] ifmonitor_item == "status":
[*] print str(code_status)
[*] else:
[*] print v
[*]
[*]
[*]
[*]def idc_site():
[*] s=urllib2.urlopen(page_url).read()
[*] pat=re.compile(r'type="checkbox" value=".+?+" id=')
[*] urls= re.findall(pat, s)
[*] for i in urls:
[*] i=i.replace('type="checkbox" value="', '')
[*] idc= i.replace('" id=', '')
[*] print idc
[*]
[*]
[*]#idc_site()
[*]web_site_status()
本文提供的更多是思路,而不是于问题本身,希望大家举一反三!
附件:http://down.运维网.com/data/2362709
页:
[1]