编写脚本,检索组
从zabbix官方文档中使用hostgroup.get 方法获取主机组请求
官方文档地址如下:
https://www.zabbix.com/documentation/3.4/zh/manual/api/reference/hostgroup/get
import requests
# python中的dict类型要转换为json格式的数据需要用到json库
import json
#要访问的网址
url='http://192.168.1.10/api_jsonrpc.php'
#请求头部信息
headers={'Content-Type':'application/json-rpc'}
#data是从官方文档处获得的
data={
# API使用的JSON-RPC协议的版本; Zabbix API实现JSON-RPC版本2.0
"jsonrpc":"2.0",
#调用的API方法
"method":"hostgroup.get",
#params将被传递给API方法的参数
"params":{
"output":"extend",
},
#之前获取到的令牌
"auth":"e62a813d9df8f08c336f9fac5a74e519",
#请求的任意标识符
"id":1
}
#使用requests发送请求,访问指定网站,向url发送data请求,r收到的返回响应为json格式
#将data转成json格式
r = requests.post(url, headers=headers, data=json.dumps(data))
ginfo = r.json()
#打印主机信息
print(ginfo['result'])
for item in ginfo['result']:
#打印主机组id和名称
print(item['groupid'],item['name'])
脚本运行结果
[{'groupid': '1', 'name': 'Templates', 'internal': '0', 'flags': '0'}, {'groupid': '2', 'name': 'Linux servers', 'internal': '0', 'flags': '0'}, {'groupid': '4', 'name': 'Zabbix servers', 'internal': '0', 'flags': '0'}, {'groupid': '5', 'name': 'Discovered hosts', 'internal': '1', 'flags': '0'}, {'groupid': '6', 'name': 'Virtual machines', 'internal': '0', 'flags': '0'}, {'groupid': '7', 'name': 'Hypervisors', 'internal': '0', 'flags': '0'}, {'groupid': '8', 'name': 'Templates/Modules', 'internal': '0', 'flags': '0'}, {'groupid': '9', 'name': 'Templates/Network Devices', 'internal': '0', 'flags': '0'}, {'groupid': '10', 'name': 'Templates/Operating Systems', 'internal': '0', 'flags': '0'}, {'groupid': '11', 'name': 'Templates/Servers Hardware', 'internal': '0', 'flags': '0'}, {'groupid': '12', 'name': 'Templates/Applications', 'internal': '0', 'flags': '0'}, {'groupid': '13', 'name': 'Templates/Databases', 'internal': '0', 'flags': '0'}, {'groupid': '14', 'name': 'Templates/Virtualization', 'internal': '0', 'flags': '0'}]
1 Templates
2 Linux servers
4 Zabbix servers
5 Discovered hosts
6 Virtual machines
7 Hypervisors
8 Templates/Modules
9 Templates/Network Devices
10 Templates/Operating Systems
11 Templates/Servers Hardware
12 Templates/Applications
13 Templates/Databases
14 Templates/Virtualization