首页 > 代码库 > zabbix监控url返回状态
zabbix监控url返回状态
参考 http://john88wang.blog.51cto.com/2165294/1565973
cd /usr/local/zabbix/bin [root@xx bin]# cat warn_web.py #!/usr/bin/env python # -*- coding: utf-8 -*- import subprocess import json args = ‘‘‘awk -F‘ ‘ ‘{print $1}‘ /usr/local/zabbix/scripts/warn.txt‘‘‘ t = subprocess.Popen(args, shell=True, stdout=subprocess.PIPE).communicate()[0] lwarns = [] for mongo in t.split(‘\n‘): if len(mongo) != 0: lwarns.append({‘{#WARN_HOST}‘: mongo}) print json.dumps({‘data‘: lwarns}, indent=4, separators=(‘,‘, ‘:‘)) [root@xx bin]# cat warn_web.py #!/usr/bin/env python # -*- coding: utf-8 -*- import subprocess import json args = ‘‘‘awk -F‘ ‘ ‘{print $1}‘ /usr/local/zabbix/scripts/warn.txt‘‘‘ t = subprocess.Popen(args, shell=True, stdout=subprocess.PIPE).communicate()[0] lwarns = [] for mongo in t.split(‘\n‘): if len(mongo) != 0: lwarns.append({‘{#WARN_HOST}‘: mongo}) print json.dumps({‘data‘: lwarns}, indent=4, separators=(‘,‘, ‘:‘)) [root@jk bin]# cat warn_monitor.py #!/usr/bin/env python # -*- coding: utf-8 -*- import urllib2,sys import json if len(sys.argv) == 2: argv1 = sys.argv[1] def http_get(): url = argv1 # 页面的地址 response = urllib2.urlopen(url) # 调用urllib2向服务器发送get请求 return response.read() # 获取服务器返回的页面信息 ret = http_get() retj=json.loads(ret) if retj[‘action‘] == "NONE": print 0 else: print 1 cat /usr/local/zabbix/etc/zabbix_agentd.conf.d [root@xx zabbix_agentd.conf.d]# cat warn_status.conf UserParameter=get_warn_name,/usr/local/zabbix/bin/warn_web.py UserParameter=get_warn_status[*],/usr/local/zabbix/bin/warn_monitor.py $1
简单判断。
本文出自 “要有梦想,万一实现了呢” 博客,谢绝转载!
zabbix监控url返回状态
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。