• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    获取zabbix上所有主机的IP和主机名的实例代码

    zabbix

    zabbix([`zæbiks])是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。

    zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。

    zabbix由2部分构成,zabbix server与可选组件zabbix agent。

    zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。

    下面通过代码给大家介绍获取zabbix上所有主机的IP和主机名,代码如下所示:

    #coding:utf-8
    #获取zabbix上所有主机的IP和主机名
    import requests
    import json
    import csv
    import time
    def get_token():
      data = {
        "jsonrpc": "2.0",
        "method": "user.login",
        "params": {
          "user": username,
          "password": password
        },
        "id": 0
      }
      r = requests.get(zaurl, headers=header, data=json.dumps(data))
      auth = json.loads(r.text)
      return auth["result"]
    def getHosts(token):
      data = {
        "jsonrpc": "2.0",
        "method": "host.get",
        "params": {
          "output": [
            "hostid",
            "host"
          ],
          "selectInterfaces": [
            "interfaceid",
            "ip"
          ]
        },
        "id": 2,
        "auth": token,
      }
      request = requests.post(zaurl, headers=header, data=json.dumps(data))
      dict = json.loads(request.content)
    #  print (dict['result'])
      return dict['result']
    if __name__ == "__main__":
      zaurl="http://xx.xx.xx.xx/zabbix/api_jsonrpc.php"
      header = {"Content-Type": "application/json"}
      username = "xx"
      password = "xx"
      token = get_token()
      hostlist = getHosts(token)
      datafile = "zabbix.txt"
      fdata = open(datafile,'w')
      for i in hostlist:
        hostid = i['hostid']
        hostip = i['host']
        fdata.write(hostip + ' ' + hostid + '\n')
      fdata.close()

    总结

    以上所述是小编给大家介绍的获取zabbix上所有主机的IP和主机名的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
    如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

    上一篇:CentOS8.0 安装配置ftp服务器的实现方法
    下一篇:centos 7.5 部署varnish缓存服务器功能
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    获取zabbix上所有主机的IP和主机名的实例代码 获取,zabbix,上,所有,主机,