Zabbix API 使用

用于调用Zabbix Api接入平台展示监控数据

作者 日期 版本
吴毅文 2017.06.28 V1.0.0

一:接口概述(用于调用Zabbix Api接入平台展示监控数据)


HOST: 1.1.1.1
PORT: 80
PROTOECOL: HTTP
ADDRESS: http://1.1.1.1/api_jsonrpc.php
WAY: POST

二:user.login方法获得认证密钥


作用之后拿取数据的参数

1:请求的方法参数

参数名称 值类型 说明 是否必须
jsonrpc str 接口版本
method str 请求方法
params json 请求方法参数
user str zabbix账号
password str zabbix密码
auth str 认证的key
id int 认证id

2:请求的示例

curl -i -X POST -H 'Content-Type:application/json' -d '{"jsonrpc":"2.0","method":"user.login","params":{"user":"admin","password":"7ujm6yhn5tgb"},"auth":null,"id":0}' http://10.10.194.180/api_jsonrpc.php

3:response数据格式

{"jsonrpc":"2.0","result":"b895ce91ba84fe247e444817c6773cc3","id":0}

三:hostgroup.get方法获取所有主机组ID


1:请求的方法参数

参数名称 值类型 说明 是否必须
jsonrpc str 接口版本
method str 请求方法
params json 请求方法参数
output array 输出格式
groupid str 主机组id
name str 主机组名
auth str 认证的key
id int 认证id

2:请求的示例

curl -i -X POST -H 'Content-Type:application/json' -d '{"jsonrpc": "2.0","method":"hostgroup.get","params":{"output":["groupid","name"]},"auth":"73912443e87995a7b6b253f7146513fa","id": 0}' http://10.10.194.180/api_jsonrpc.php

3:response数据格式

{"jsonrpc":"2.0","result":[{"groupid":"14","name":"Aliyun Server"},{"groupid":"13","name":"Database Server"},{"groupid":"5","name":"Discovered hosts"},{"groupid":"10","name":"Elasticsearch servers"},{"groupid":"8","name":"Hadoop servers"},{"groupid":"7","name":"Hypervisors"},{"groupid":"9","name":"Kafka servers"},{"groupid":"2","name":"Linux servers"},{"groupid":"12","name":"Ops server"},{"groupid":"15","name":"SSDK group"},{"groupid":"1","name":"Templates"},{"groupid":"6","name":"Virtual machines"}],"id":0}

四:host.get方法获取单个主机组下所有的主机ID


1:请求的方法参数

参数名称 值类型 说明 是否必须
jsonrpc str 接口版本
method str 请求方法
params json 请求方法参数
output array 输出格式
groupids str/array 主机组id
auth str 认证的key
id int 认证id

2:请求的示例
curl -i -X POST -H'Content-Type: application/json' -d '{"jsonrpc":"2.0","method":"host.get","params":{"output":["hostid","name"],"groupids":"14"},"auth":"73912443e87995a7b6b253f7146513fa","id": 0}' http://1.1.1.1/api_jsonrpc.php

3:response数据格式

{"jsonrpc":"2.0","result":[{"hostid":"10110","name":"Zabbix server"},{"hostid":"10132","name":"10.10.87.122"},{"hostid":"10163","name":"10.10.24.233"},{"hostid":"10169","name":"10.10.198.53"},{"hostid":"10221","name":"HN1A-app-node1"},{"hostid":"10225","name":"HN1A-ops-server1"},{"hostid":"10226","name":"HN1A-app-node2"},{"hostid":"10227","name":"HN1A-app-node3"},{"hostid":"10228","name":"HN1A-ES-node1"},{"hostid":"10229","name":"HN1A-ES-node2"},{"hostid":"10230","name":"HN1A-ES-node3"}],"id":0}

五:itemsid.get方法获取单个主机下所有的监控项ID


1:请求的方法参数

参数名称 值类型 说明 是否必须
jsonrpc str 接口版本
method str 请求方法
params json 请求方法参数
output array 输出格式
groupids str/array 主机组id
auth str 认证的key
id int 认证id

2:请求的示例
curl -i -X POST -H 'Content-Type:application/json' -d '{"jsonrpc":"2.0","method":"item.get","params":{"output":"itemids","hostids":"10110"},"auth":"73912443e87995a7b6b253f7146513fa","id": 0}' http://1.1.1.1/api_jsonrpc.php

3:response数据格式

{"jsonrpc":"2.0","result":[{"itemid":"36141"},{"itemid":"32895"},{"itemid":"32894"},{"itemid":"35951"},{"itemid":"32893"},{"itemid":"32891"},{"itemid":"23933"},{"itemid":"23934"},{"itemid":"23935"},{"itemid":"36142"},{"itemid":"32902"},{"itemid":"32901"},{"itemid":"35952"},{"itemid":"32900"},{"itemid":"32898"},{"itemid":"36143"},{"itemid":"32909"},{"itemid":"32908"},{"itemid":"35953"},{"itemid":"32907"},{"itemid":"32905"},{"itemid":"36144"},{"itemid":"32916"},{"itemid":"32915"},{"itemid":"35954"},{"itemid":"32914"},{"itemid":"32912"},{"itemid":"36145"},{"itemid":"32923"},{"itemid":"32922"},{"itemid":"35955"},{"itemid":"32921"},{"itemid":"32919"},{"itemid":"36146"},{"itemid":"32930"}],"id":0}

六:history.get方法获取单个监控项的历史数据


1:请求的方法参数

参数名称 值类型 说明 是否必须
jsonrpc str 接口版本
method str 请求方法
params json 请求方法参数
history int 所返回的历史对象类型. 0 - numeric float; 1 - character; 2 - log; 3 - numeric unsigned; 4 - text. Default: 3.
itemids str/array 主机组id
time_from timestamp 仅返回在给定时间之后或之后收到的值
itemids timestamp 仅返回在给定时间之前或之前收到的值
sortfield str/array 按照给定的属性对结果进行排序(可以是itemid或者clock)
sortorder str/array ASC- 升序; DESC - 降序
limit int 限制返回采集最近几次数据(通常带上)
countOutput flag 返回结果中的记录数,而不是实际的数据
auth str 认证的key
id int 认证id

2:请求的示例
curl -i -X POST -H 'Content-Type:application/json' -d '{"jsonrpc":"2.0","method":"history.get","params":{"history":3,"itemids":"35953","output":"extend","limit":10},"auth":"73912443e87995a7b6b253f7146513fa","id": 0}' http://1.1.1.1/api_jsonrpc.php

3:response数据格式

{"jsonrpc":"2.0","result":[{"itemid":"35953","clock":"1490942679","value":"0","ns":"0"},{"itemid":"35953","clock":"1490942979","value":"0","ns":"0"},{"itemid":"35953","clock":"1490943280","value":"0","ns":"0"},{"itemid":"35953","clock":"1490943580","value":"0","ns":"0"},{"itemid":"35953","clock":"1490943880","value":"0","ns":"0"},{"itemid":"35953","clock":"1490944180","value":"0","ns":"0"},{"itemid":"35953","clock":"1490944480","value":"0","ns":"0"},{"itemid":"35953","clock":"1490944781","value":"0","ns":"0"},{"itemid":"35953","clock":"1490945085","value":"0","ns":"0"},{"itemid":"35953","clock":"1490945385","value":"0","ns":"0"}],"id":0}

注:要获取最新数据limit为1即可

附:get方法的通用参数

参数名称 值类型 说明
countOutput flag 返回结果中的记录数,而不是实际的数据
editable boolean 如果设置为true仅返回用户具有写入权限的对象,默认为false
excludeSearch flag 返回与search参数中给出的标准不匹配的结果
filter object 仅返回与给定过滤器完全匹配的结果,接受一个数组,其中的键是属性名称,并且值是单个值或要匹配的值的数组
limit int 限制返回的记录数
output query 要返回的对象属性,默认值:extend
preservekeys flag 在结果数组中使用ID作为键
search object 返回匹配给定通配符搜索的结果,接受一个数组,其中键是属性名,值是要搜索的字符串.如果没有额外的选项,这将执行LIKE “%…%”搜索,仅适用于string和text领域
searchByAny boolean 如果设置为true返回与filteror或search参数中给出的任何条件匹配的结果,而不是所有这些结果,默认false
searchWildcardsEnabled boolean 如果设置为true使能“*”作为search参数中的通配符,默认值为false
sortfield str/array 按照给定的属性对结果进行排序(可以是itemid或者clock)
sortorder str/array ASC- 升序; DESC - 降序
startSearch flag 该search参数将比较领域的开始,也就是进行LIKE “…%”搜索来代替

参考官网:https://www.zabbix.com/documentation/3.0/manual/api

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,937评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,503评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,712评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,668评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,677评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,601评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,975评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,637评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,881评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,621评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,710评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,387评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,971评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,947评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,189评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,805评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,449评论 2 342

推荐阅读更多精彩内容