获取

描述

integer/array hostinterface.get(object parameters)

此方法允许获取给定参数的主机接口记录。

::: noteclassic 该方法适用于管理员超级管理员用户类型。可以在用户角色设置中撤销调用该方法的权限。有关详细信息,参阅用户角色。:::

参数

(object)定义期望输出的参数。

该方法支持以下参数:

参数类型描述
hostids字符串/数组返回给定主机使用的主机接口。
interfaceids字符串/数组返回给定ID的主机接口。
itemids字符串/数组返回给定监控项使用的主机接口。
triggerids字符串/数组返回给定的触发器中监控项使用的主机接口。
selectItems查询返回监控项 属性。其中包括使用该接口的监控项

支持 count.
selectHosts查询返回 主机属性,其中包括使用该接口的主机数组。
limitSelects整型限制子选择返回的记录数

适用于以下子选择:
selectItems
sortfield字符串/数组对给定属性的结果进行排序。

可能的值有: interfaceid, dns, ip
countOutput布尔值该参数对于参考注释页面中所有get详细描述的方法都适用。
editable布尔值
excludeSearch布尔值
filter对象
limit整型
nodeids字符串/数组
output查询
preservekeys布尔值
search对象
searchByAny布尔值
searchWildcardsEnabled布尔值
sortorder字符串/数组
startSearch布尔值

返回值

(integer/array) 返回:

  • 一组对象;
  • 如果设置了countOutput参数,则返回获取到的对象数量。

示例

获取主机接口

获取ID为30057的主机使用的接口所有数据。

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "hostinterface.get",
  4. "params": {
  5. "output": "extend",
  6. "hostids": "30057"
  7. },
  8. "auth": "038e1d7b1735c6a5436ee9eae095879e",
  9. "id": 1
  10. }

响应:

  1. {
  2. "jsonrpc": "2.0",
  3. "result": [
  4. {
  5. "interfaceid": "50039",
  6. "hostid": "30057",
  7. "main": "1",
  8. "type": "1",
  9. "useip": "1",
  10. "ip": "::1",
  11. "dns": "",
  12. "port": "10050",
  13. "available": "0",
  14. "error": "",
  15. "errors_from": "0",
  16. "disable_until": "0",
  17. "details": []
  18. },
  19. {
  20. "interfaceid": "55082",
  21. "hostid": "30057",
  22. "main": "0",
  23. "type": "1",
  24. "useip": "1",
  25. "ip": "127.0.0.1",
  26. "dns": "",
  27. "port": "10051",
  28. "available": "0",
  29. "error": "",
  30. "errors_from": "0",
  31. "disable_until": "0",
  32. "details": {
  33. "version": "2",
  34. "bulk": "0",
  35. "community": "{$SNMP_COMMUNITY}"
  36. }
  37. }
  38. ],
  39. "id": 1
  40. }

参考

来源

CHostInterface::get() in ui/include/classes/api/services/CHostInterface.php.