python通过zabbix api获取主机


Posted in Python onSeptember 17, 2018

zabbix强大地方在于有强大的api,zabbix 的api可以拿到zabbix大部分数据,目前我所需的数据基本可以通过api获取,以下是通过zabbix api获取的主机信息python代码,其他数据也如此类推,api使用方法可参见官网文档:

#!/usr/bin/env python
#-*- coding: utf-8 -*-
import json
import urllib2
from urllib2 import URLError
from login import zabbix_login
t=zabbix_login()
def hostid_get():
 data = json.dumps(
  {
   "jsonrpc": "2.0",
   "method": "host.get",
   "params": {
      "output": "extend",
      "groupids":14,
      "filter":{"flags": "4" },
      },
   "auth":t.user_login(),
   "id": 1,
  })
 request = urllib2.Request(t.url, data)
 for key in t.header:
  request.add_header(key, t.header[key])
 try:
  result = urllib2.urlopen(request)
 except URLError as e:
  if hasattr(e, 'reason'):
   print 'zabbix server is faile'
   print 'Reason: ', e.reason
  elif hasattr(e, 'code'):
   print 'zabbix server not request.'
   print 'Error code: ', e.code
 else:
  response = json.loads(result.read())
  result.close()
  hostid=[]
  hostname=[]
  for host in response['result']:
   hostid.append(host['hostid'])
   hostname.append(host['name'])
  return hostid,hostname
 
if __name__ == "__main__":
 a,b=hostid_get()
 i=0
 n=len(b)
 for i in range(n):
  print a[i],b[i]

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python之eval()函数危险性浅析
Jul 03 Python
使用pandas对矢量化数据进行替换处理的方法
Apr 11 Python
ubuntu16.04制作vim和python3的开发环境
Sep 23 Python
python random从集合中随机选择元素的方法
Jan 23 Python
Python 使用 PyMysql、DBUtils 创建连接池提升性能
Aug 14 Python
python 图片二值化处理(处理后为纯黑白的图片)
Nov 01 Python
Python实现实时数据采集新型冠状病毒数据实例
Feb 04 Python
Python如何使用turtle库绘制图形
Feb 26 Python
python 读取二进制 显示图片案例
Apr 24 Python
Django中ORM找出内容不为空的数据实例
May 20 Python
Python远程linux执行命令实现
Nov 11 Python
python基础学习之生成器与文件系统知识总结
May 25 Python
Python从ZabbixAPI获取信息及实现Zabbix-API 监控的方法
Sep 17 #Python
python实现Zabbix-API监控
Sep 17 #Python
centos6.8安装python3.7无法import _ssl的解决方法
Sep 17 #Python
Python从使用线程到使用async/await的深入讲解
Sep 16 #Python
推荐10款最受Python开发者欢迎的Python IDE
Sep 16 #Python
python3中os.path模块下常用的用法总结【推荐】
Sep 16 #Python
python os.path模块常用方法实例详解
Sep 16 #Python
You might like
php 来访国内外IP判断代码并实现页面跳转
2009/12/18 PHP
PHP中使用正则表达式提取中文实现笔记
2015/01/20 PHP
laravel 使用auth编写登录的方法
2019/09/30 PHP
thinkphp5.1框架模板赋值与变量输出示例
2020/05/25 PHP
Javascript 面向对象特性
2009/12/28 Javascript
IE8 中使用加速器(Activities)
2010/05/14 Javascript
jquery 模拟类搜索框自动完成搜索提示功能(改进)
2010/05/24 Javascript
Javascript跨域请求的4种解决方式
2013/03/17 Javascript
jQuery的缓存机制浅析
2014/06/07 Javascript
JavaScript简单遍历DOM对象所有属性的实现方法
2015/10/21 Javascript
Jquery+Ajax+PHP+MySQL实现分类列表管理(下)
2015/10/28 Javascript
基于JavaScript实现表单密码的隐藏和显示出来
2016/03/02 Javascript
JS实现重新加载当前页面或者父页面的几种方法
2016/11/30 Javascript
Javascript this 函数深入详解
2016/12/13 Javascript
jQuery基本选择器和层次选择器学习使用
2017/02/27 Javascript
详解vue嵌套路由-query传递参数
2017/05/23 Javascript
angular4 如何在全局设置路由跳转动画的方法
2017/08/30 Javascript
VueJs 将接口用webpack代理到本地的方法
2017/11/27 Javascript
vuex 使用文档小结篇
2018/01/11 Javascript
小程序实现列表点赞功能
2018/11/02 Javascript
原生js实现each方法实例代码详解
2019/05/27 Javascript
JS实现多选框的操作
2020/06/24 Javascript
Vue ​v-model相关知识总结
2021/01/28 Vue.js
在IIS服务器上以CGI方式运行Python脚本的教程
2015/04/25 Python
判断python字典中key是否存在的两种方法
2018/08/10 Python
利用python修改json文件的value方法
2018/12/31 Python
python装饰器练习题及答案
2019/11/01 Python
使用HTML5做的导航条详细步骤
2020/10/19 HTML / CSS
Public Desire美国/加拿大:全球性的在线鞋类品牌
2018/12/17 全球购物
英国水族馆和池塘用品购物网站:Warehouse Aquatics
2019/08/29 全球购物
英文感谢信格式
2015/01/21 职场文书
质量承诺书格式范文
2015/04/28 职场文书
班主任寄语2016
2015/12/04 职场文书
《卖火柴的小女孩》教学反思
2016/02/19 职场文书
经典法律座右铭(50句)
2019/08/15 职场文书
MySQL分区表管理命令汇总
2022/03/21 MySQL