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检测远程端口是否打开的方法
Mar 14 Python
使用beaker让Facebook的Bottle框架支持session功能
Apr 23 Python
深入解析Python中的lambda表达式的用法
Aug 28 Python
Python编程中字符串和列表的基本知识讲解
Oct 14 Python
对Python中内置异常层次结构详解
Oct 18 Python
详解python路径拼接os.path.join()函数的用法
Oct 09 Python
python返回数组的索引实例
Nov 28 Python
如何理解Python中包的引入
May 29 Python
在python下实现word2vec词向量训练与加载实例
Jun 09 Python
python 实时调取摄像头的示例代码
Nov 25 Python
如何利用Python实现一个论文降重工具
Jul 09 Python
Python函数对象与闭包函数
Apr 13 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 error_log 函数的使用
2009/04/13 PHP
ThinkPHP3.1新特性之对页面压缩输出的支持
2014/06/19 PHP
JavaScript 保存数组到Cookie的代码
2010/04/14 Javascript
jQuery对象数据缓存Cache原理及jQuery.data方法区别介绍
2013/04/07 Javascript
JQuery中对Select的option项的添加、删除、取值
2013/08/25 Javascript
jquery实现具有嵌套功能的选项卡
2016/02/12 Javascript
javascript中异常处理案例(推荐)
2016/10/03 Javascript
JSON对象 详解及实例代码
2016/10/18 Javascript
使用Curl命令查看请求响应时间方法
2016/11/04 Javascript
Bootstrap CSS组件之导航(nav)
2016/12/17 Javascript
详解vue.js2.0父组件点击触发子组件方法
2017/05/10 Javascript
vue使用v-if v-show页面闪烁,div闪现的解决方法
2018/10/12 Javascript
微信小程序表单验证WxValidate的使用
2019/11/27 Javascript
小程序实现列表倒计时功能
2021/01/29 Javascript
[01:47]2018年度DOTA2最具人气解说-完美盛典
2018/12/16 DOTA
Python使用MD5加密算法对字符串进行加密操作示例
2018/03/30 Python
python基础教程项目二之画幅好画
2018/04/02 Python
浅谈python标准库--functools.partial
2019/03/13 Python
Django中自定义模型管理器(Manager)及方法
2019/09/23 Python
OpenCV+python实现实时目标检测功能
2020/06/24 Python
使用matplotlib的pyplot模块绘图的实现示例
2020/07/12 Python
Python pickle模块常用方法代码实例
2020/10/10 Python
HTML5实现多张图片上传功能
2016/03/11 HTML / CSS
HTML5移动端手机网站开发流程
2016/04/25 HTML / CSS
Lentiamo荷兰:在线订购隐形眼镜、隐形眼镜液和太阳镜
2019/10/25 全球购物
JAVA和C++区别都有哪些
2015/03/30 面试题
《春雨》教学反思
2014/04/24 职场文书
素质教育标语
2014/06/27 职场文书
安全责任书模板
2014/07/22 职场文书
2014党的群众路线教育实践活动学习心得体会
2014/10/31 职场文书
2014办公室年度工作总结
2014/12/09 职场文书
行政主管岗位职责范本
2015/04/09 职场文书
社区志愿服务活动感想
2015/08/07 职场文书
python如何做代码性能分析
2021/04/26 Python
浅谈node.js中间件有哪些类型
2021/04/29 Javascript
Python标准库之typing的用法(类型标注)
2021/06/02 Python