获取

描述

integer/array hostprototype.get(object parameters)

该方法允许根据给定的参数获取主机原型记录.

参数

(对象) 定义要输出的参数.

该方法支持如下属性:

参数 类描述
hostids字符串/数组 返回给定D的主机原型.
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规则中获取主机原型

从LLD规则中获取所有主机原型及其组链接和组原型

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "hostprototype.get",
  4. "params": {
  5. "output": "extend",
  6. "selectGroupLinks": "extend",
  7. "selectGroupPrototypes": "extend",
  8. "discoveryids": "23554"
  9. },
  10. "auth": "038e1d7b1735c6a5436ee9eae095879e",
  11. "id": 1
  12. }

响应:

  1. {
  2. "jsonrpc": "2.0",
  3. "result": [
  4. {
  5. "hostid": "10092",
  6. "host": "{#HV.UUID}",
  7. "status": "0",
  8. "name": "{#HV.NAME}",
  9. "templateid": "0",
  10. "tls_connect": "1",
  11. "tls_accept": "1",
  12. "tls_issuer": "",
  13. "tls_subject": "",
  14. "tls_psk_identity": "",
  15. "tls_psk": "",
  16. "groupLinks": [
  17. {
  18. "group_prototypeid": "4",
  19. "hostid": "10092",
  20. "groupid": "7",
  21. "templateid": "0"
  22. }
  23. ],
  24. "groupPrototypes": [
  25. {
  26. "group_prototypeid": "7",
  27. "hostid": "10092",
  28. "name": "{#CLUSTER.NAME}",
  29. "templateid": "0"
  30. }
  31. ]
  32. }
  33. ],
  34. "id": 1
  35. }

参考

来源

CHostPrototype::get() in frontends/php/include/classes/api/services/CHostPrototype.php.