zabbix-api,待完善
admin
2023-02-24 13:20:02
0

获取zabbix登录认证字符串(必须)

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

``` 返回值
{
"jsonrpc": "2.0",
"result": "4f4a647dbb6d2d31a345fce2977425c5",
"id": 0
}


## 获取所有主机信息,关于selectInterfaces的回参可以在https://www.zabbix.com/documentation/3.4/manual/api/reference/hostinterface/get中查找

curl -H "Content-Type: application/json-rpc" -d '{"jsonrpc":"2.0","method":"host.get","params":{"output":["hostid","host"],"selectInterfaces":["interfaceid","ip"]},"id":0,"auth":"4f4a647dbb6d2d31a345fce2977425c5"}' http://192.168.74.133/api_jsonrpc.php

``` 返回值
{
    "jsonrpc": "2.0",
    "result": [{
        "hostid": "10084",
        "host": "Zabbix server",
        "interfaces": [{
            "interfaceid": "1",
            "ip": "127.0.0.1"
        }]
    }, {
        "hostid": "10261",
        "host": "zabbix-agent_134",
        "interfaces": [{
            "interfaceid": "2",
            "ip": "172.18.0.134"
        }]
    }],
    "id": 0
}

根据host_id获取所有item信息

curl -H "Content-Type: application/json-rpc" -d '{"jsonrpc": "2.0","method": "item.get","params": {"output": "extend","host":"Zabbix server"},"id":0,"auth":"4f4a647dbb6d2d31a345fce2977425c5"}' http://192.168.74.133/api_jsonrpc.php

``` 返回值,直截取部分,因为太多
{
"jsonrpc": "2.0",
"result": [{
"itemid": "23327",
"type": "0",
"snmp_community": "",
"snmp_oid": "",
"hostid": "10084",
"name": "Host name of zabbixagentd running",
"key
": "agent.hostname",
"delay": "1h",
"history": "1w",
"trends": "0",
"status": "0",
"value_type": "1",
"trapper_hosts": "",
"units": "",
"snmpv3_securityname": "",
"snmpv3_securitylevel": "0",
"snmpv3_authpassphrase": "",
"snmpv3_privpassphrase": ""


## 根据指定item获取该item所有信息,按名称排序
注意:extend是全部的意思,"sortfield": "name"是按照名称排序

curl -H "Content-Type: application/json-rpc" -d '{"jsonrpc": "2.0","method": "item.get","params": {"output": "extend","host":"Zabbix server","search": {"key_": "system.cpu.util[,nice]"},"sortfield": "name"},"id":0,"auth":"4f4a647dbb6d2d31a345fce2977425c5"}' http://192.168.74.133/api_jsonrpc.php

``` 返回值
{
    "jsonrpc": "2.0",
    "result": [{
        "itemid": "23302",
        "type": "0",
        "snmp_community": "",
        "snmp_oid": "",
        "hostid": "10084",
        "name": "CPU nice time",
        "key_": "system.cpu.util[,nice]",
        "delay": "1m",
        "history": "1w",
        "trends": "365d",
        "status": "0",
        "value_type": "0",
        "trapper_hosts": "",
        "units": "%",
        "snmpv3_securityname": "",
        "snmpv3_securitylevel": "0",
        "snmpv3_authpassphrase": "",
        "snmpv3_privpassphrase": "",
        "formula": "",
        "error": "",
        "lastlogsize": "0",
        "logtimefmt": "",
        "templateid": "17358",
        "valuemapid": "0",
        "params": "",
        "ipmi_sensor": "",
        "authtype": "0",
        "username": "",
        "password": "",
        "publickey": "",
        "privatekey": "",
        "mtime": "0",
        "flags": "0",
        "interfaceid": "1",
        "port": "",
        "description": "The time the CPU has spent running users' processes that have been niced.",
        "inventory_link": "0",
        "lifetime": "0",
        "snmpv3_authprotocol": "0",
        "snmpv3_privprotocol": "0",
        "state": "0",
        "snmpv3_contextname": "",
        "evaltype": "0",
        "jmx_endpoint": "",
        "master_itemid": "0",
        "timeout": "3s",
        "url": "",
        "query_fields": [],
        "posts": "",
        "status_codes": "200",
        "follow_redirects": "1",
        "post_type": "0",
        "http_proxy": "",
        "headers": [],
        "retrieve_mode": "0",
        "request_method": "0",
        "output_format": "0",
        "ssl_cert_file": "",
        "ssl_key_file": "",
        "ssl_key_password": "",
        "verify_peer": "0",
        "verify_host": "0",
        "allow_traps": "0",
        "lastclock": "0",
        "lastns": "0",
        "lastvalue": "0",
        "prevvalue": "0"
    }],
    "id": 0
}

只返回特定主机上特定item最近的一次值,但输出值必须以数组方式呈现,即["lastvalue"]

curl -H "Content-Type: application/json-rpc" -d '{"jsonrpc": "2.0","method": "item.get","params": {"output": ["lastvalue"],"host":"Zabbix server","search": {"key_": "system.cpu.util[,nice]"}},"id":0,"auth":"4f4a647dbb6d2d31a345fce2977425c5"}' http://192.168.74.133/api_jsonrpc.php

``` 返回值
{
"jsonrpc": "2.0",
"result": [{
"itemid": "23302",
"lastvalue": "0"
}],
"id": 0
}


## 获取所有模板ID,以groupid为升序排列
```curl -H "Content-Type: application/json-rpc" -d '{"jsonrpc":"2.0","method":"hostgroup.get","params":{"output":["groupid","name"],"sortfield": "groupid"},"id":0,"auth":"4f4a647dbb6d2d31a345fce2977425c5"}' http://192.168.74.133/api_jsonrpc.php

``` 返回值
{
"jsonrpc": "2.0",
"result": [{
"groupid": "1",
"name": "Templates"
}, {
"groupid": "2",
"name": "Linux servers"
}, {
"groupid": "4",
"name": "Zabbix servers"
}, {
"groupid": "5",
"name": "Discovered hosts"
}, {
"groupid": "6",
"name": "Virtual machines"
}, {
"groupid": "7",
"name": "Hypervisors"
}, {
"groupid": "8",
"name": "Templates/Modules"
}, {
"groupid": "9",
"name": "Templates/Network devices"
}, {
"groupid": "10",
"name": "Templates/Operating systems"
}, {
"groupid": "11",
"name": "Templates/Server hardware"
}, {
"groupid": "12",
"name": "Templates/Applications"
}, {
"groupid": "13",
"name": "Templates/Databases"
}, {
"groupid": "14",
"name": "Templates/Virtualization"
}],
"id": 0
}


## 根据groupid创建模板,模板名称为Linux template3

curl -H "Content-Type: application/json-rpc" -d '
{
"jsonrpc": "2.0",
"method": "template.create",
"params": {
"host": "Linux template3", #这里为模板的名称
"groups": {
"groupid": 1
}
},
"auth": "4f4a647dbb6d2d31a345fce2977425c5",
"id": 0
}' http://192.168.74.133/api_jsonrpc.php

``` 返回值
{
    "jsonrpc": "2.0",
    "result": {
        "templateids": ["10264"]
    },
    "id": 1
}

根据GROUPID查询包含哪些模板,输出模板名称

curl -H "Content-Type: application/json-rpc" -d '
{
    "jsonrpc": "2.0",
    "method": "hostgroup.get",
    "params": {
        "output": ["host"],
        "groupids": 1,
        "selectTemplates": ["host"]},
    "auth": "4f4a647dbb6d2d31a345fce2977425c5",
    "id": 0
}' http://192.168.74.133/api_jsonrpc.php

```返回值
{
"jsonrpc": "2.0",
"result": [{
"groupid": "1",
"templates": [{
"host": "Linux template",
"templateid": "10262"
}, {
"host": "Linux template2",
"templateid": "10263"
}, {
"host": "Linux template3",
"templateid": "10264"
}]
}],
"id": 0
}


## 获取指定主机的主机清单信息

curl -H "Content-Type: application/json-rpc" -d '
{
"jsonrpc":"2.0","method":"host.get","params":{"output":"extend","selectInventory":"extend","filter":{"host":["zabbix-agent_134"]}},"id":0,"auth":"4f4a647dbb6d2d31a345fce2977425c5"
}' http://192.168.74.133/api_jsonrpc.php

```返回值
{
    "jsonrpc": "2.0",
    "result": [{
        "hostid": "10261",
        "proxy_hostid": "0",
        "host": "zabbix-agent_134",
        "status": "0",
        "disable_until": "0",
        "error": "",
        "available": "1",
        "errors_from": "0",
        "lastaccess": "0",
        "ipmi_authtype": "-1",
        "ipmi_privilege": "2",
        "ipmi_username": "",
        "ipmi_password": "",
        "ipmi_disable_until": "0",
        "ipmi_available": "0",
        "snmp_disable_until": "0",
        "snmp_available": "0",
        "maintenanceid": "0",
        "maintenance_status": "0",
        "maintenance_type": "0",
        "maintenance_from": "0",
        "ipmi_errors_from": "0",
        "snmp_errors_from": "0",
        "ipmi_error": "",
        "snmp_error": "",
        "jmx_disable_until": "0",
        "jmx_available": "0",
        "jmx_errors_from": "0",
        "jmx_error": "",
        "name": "zabbix-agent_134",
        "flags": "0",
        "templateid": "0",
        "description": "",
        "tls_connect": "1",
        "tls_accept": "1",
        "tls_issuer": "",
        "tls_subject": "",
        "tls_psk_identity": "",
        "tls_psk": "",
        "proxy_address": "",
        "auto_compress": "1",
        "inventory": {
            "hostid": "10261",
            "inventory_mode": "0",
            "type": "123",
            "type_full": "123123",
            "name": "123123123",
            "alias": "123123",
            "os": "Linux",
            "os_full": "3123",
            "os_short": "",
            "serialno_a": "",
            "serialno_b": "",
            "tag": "3123123",
            "asset_tag": "12312",
            "macaddress_a": "12312",
            "macaddress_b": "213123123",
            "hardware": "",
            "hardware_full": "",
            "software": "",
            "software_full": "",
            "software_app_a": "",
            "software_app_b": "",
            "software_app_c": "",
            "software_app_d": "",
            "software_app_e": "",
            "contact": "",
            "location": "",
            "location_lat": "",
            "location_lon": "",
            "notes": "",
            "chassis": "",
            "model": "",
            "hw_arch": "",
            "vendor": "",
            "contract_number": "",
            "installer_name": "",
            "deployment_status": "",
            "url_a": "",
            "url_b": "",
            "url_c": "",
            "host_networks": "",
            "host_netmask": "",
            "host_router": "",
            "oob_ip": "",
            "oob_netmask": "",
            "oob_router": "",
            "date_hw_purchase": "",
            "date_hw_install": "",
            "date_hw_expiry": "",
            "date_hw_decomm": "",
            "site_address_a": "",
            "site_address_b": "",
            "site_address_c": "",
            "site_city": "",
            "site_state": "",
            "site_country": "",
            "site_zip": "",
            "site_rack": "",
            "site_notes": "",
            "poc_1_name": "",
            "poc_1_email": "",
            "poc_1_phone_a": "",
            "poc_1_phone_b": "",
            "poc_1_cell": "",
            "poc_1_screen": "",
            "poc_1_notes": "",
            "poc_2_name": "",
            "poc_2_email": "",
            "poc_2_phone_a": "",
            "poc_2_phone_b": "",
            "poc_2_cell": "",
            "poc_2_screen": "",
            "poc_2_notes": ""
        }
    }],
    "id": 0
}

另外说一句51cto的markdown格式真麻烦,我服务器到了可能就放自己博客上了

相关内容

热门资讯

美媒:特朗普在结束伊朗战争问题... 据“国会山”网站5月6日报道,周二晚间,美国总统特朗普突然宣布终止旨在打破伊朗对霍尔木兹海峡掌控的军...
和创硅材料取得熔融石英制品擦洗... 国家知识产权局信息显示,东海县和创硅材料有限公司取得一项名为“一种熔融石英制品的擦洗脱泥装置”的专利...
美商务部长再就爱泼斯坦案接受国... 5月6日,美国商务部长卢特尼克“自愿”就其与爱泼斯坦的关系接受美国国会众议院监督与政府改革委员会的问...
“五一”小长假黄金零售市场新变... 【大河财立方 记者 孙凯杰】 “五一”小长假,黄金价格出现一波短暂调整,线下黄金零售市场热度如何?5...
以军3周来首次袭击黎巴嫩首都 据以色列总理内塔尼亚胡和国防部长卡茨当地时间5月6日晚发表的联合声明,以军当天对黎巴嫩首都贝鲁特南郊...
东莞移动:5G-A智擎护航, ... “五一”期间,松山湖草莓音乐节、广东国际汽车展示交易会·春季、2026茶园游会田园文化美食节、大岭山...
汉阳“知音数创”AI智能体创新... 4月30日,武汉市汉阳区数智产业推介会暨汉阳“知音数创”AI智能体创新大赛启动仪式在武汉基金产业基地...
伊朗最高领袖军事顾问:美国必须... 当地时间5月6日,伊朗最高领袖军事顾问穆赫辛·雷扎伊在接受采访时表示,伊朗不允许美国在不付出代价的情...
瑞士确诊、法国密接、西班牙待命... 综合法媒报道,国际探险邮轮“洪迪厄斯”号上的汉坦病毒事件,正从南美航程延伸至欧洲语境。最新进展显示,...
AMD锐龙X3D快到把游戏跑崩... 快科技5月6日消息,在Apex英雄最新Overclocked补丁中,修复了一个颇为尴尬的问题:AMD...