integer/array hostprototype.get(object parameters)
该方法允许根据给定的参数获取主机原型记录.
(对象) 定义要输出的参数.
该方法支持如下属性:
| 参数 | 类型 | 描述 |
|---|---|---|
| hostids | 字符串/数组 | 返回给定ID的主机原型. |
| discoveryids | 字符串/数组 | 返回归属给定LLD规则的主机原型. |
| inherited | 布尔值 | 如果设置为true,只返回模板从模板继承的项目. |
| selectDiscoveryRule | 查询 | 在discoveryRule属性中返回主机原型归属的LLD规则. |
| selectGroupLinks | 查询 | 在groupLinks属性中返回主机原型的组连接. |
| selectGroupPrototypes | 查询 | 在groupPrototypes属性中返回主机原型的组原型. |
| selectInventory | 查询 | 在inventory属性中返回主机原型资产信息. |
| selectParentHost | 查询 | 在parentHost属性中返回主机原型所属的主机. |
| selectTemplates | 查询 | 在templates属性中返回连接到主机原型的模板. |
| sortfield | 字符串/数组 | 按照给定的属性对结果进行排序. 可能的值: hostid, host, name and status. |
| countOutput | 布尔值 | 这些参数对于所有get方法都是通用的,详情可参考Generic Zabbix API information. |
| editable | 布尔值 | |
| excludeSearch | 布尔值 | |
| filter | 对象 | |
| limit | 整数 | |
| output | 查询 | |
| preservekeys | 布尔值 | |
| search | 对象 | |
| searchByAny | 布尔值 | |
| searchWildcardsEnabled | 布尔值 | |
| sortorder | 字符串/数组 | |
| startSearch | 布尔值 | |
(整数/数组) 返回:
countOutput参数,则返回对象的数量.从LLD规则中获取所有主机原型及其组链接和组原型
请求:
{ "jsonrpc": "2.0", "method": "hostprototype.get", "params": { "output": "extend", "selectGroupLinks": "extend", "selectGroupPrototypes": "extend", "discoveryids": "23554" }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
响应:
{ "jsonrpc": "2.0", "result": [ { "hostid": "10092", "host": "{#HV.UUID}", "status": "0", "name": "{#HV.NAME}", "templateid": "0", "tls_connect": "1", "tls_accept": "1", "tls_issuer": "", "tls_subject": "", "tls_psk_identity": "", "tls_psk": "", "groupLinks": [ { "group_prototypeid": "4", "hostid": "10092", "groupid": "7", "templateid": "0" } ], "groupPrototypes": [ { "group_prototypeid": "7", "hostid": "10092", "name": "{#CLUSTER.NAME}", "templateid": "0" } ] } ], "id": 1 }
CHostPrototype::get() in frontends/php/include/classes/api/services/CHostPrototype.php.