dhost.get

描述

integer/array dhost.get(object parameters)

这个方法允许根据给定的参数检索发现的主机。

任何类型的用户都可以使用此方法。可以在用户角色设置中撤销调用该方法的权限。参见用户角色 了解更多信息。

参数

(object) 定义需要输出的参数。

该方法支持以下参数。

参数类型描述
dhostids字符串/数组只返回给定ID的被发现的主机
druleids字符串/数组只返回发现规则创建的已发现主机。
dserviceids字符串/数组只返回指定服务的已发现主机。
selectDRules查询返回一个drules属性,其中包括检测到主机发现规则数组。
selectDServices查询返回dservices属性,发现的服务在主机上运行。

支持 count
limitSelects整数限制子选项返回的记录数

用于如下的子选项:
selectDServices - 结果会按照 dserviceid排序。
sortfield字符串/数组按照给出的属性对结果进行排序。

可能的值: dhostiddruleid.
countOutput布尔值参考评论中详细描述了所有“get”方法通用的这些参数。
editable布尔值
excludeSearch布尔值
filter对象
limit整数
output查询
preservekeys布尔值
search对象
searchByAny布尔值
searchWildcardsEnabled布尔值
sortorder字符串/数组
startSearch布尔值

返回值

(integer/array) 返回:

  • 一组对象;
  • 如果使用了 countOutput 参数,返回检索对象的数量。

示例

通过发现规则检索发现的主机

检索发现规则”4”检测到的所有主机及其正在运行的已发现服务。

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "dhost.get",
  4. "params": {
  5. "output": "extend",
  6. "selectDServices": "extend",
  7. "druleids": "4"
  8. },
  9. "auth": "038e1d7b1735c6a5436ee9eae095879e",
  10. "id": 1
  11. }

响应:

  1. {
  2. "jsonrpc": "2.0",
  3. "result": [
  4. {
  5. "dservices": [
  6. {
  7. "dserviceid": "1",
  8. "dhostid": "1",
  9. "type": "4",
  10. "key_": "",
  11. "value": "",
  12. "port": "80",
  13. "status": "0",
  14. "lastup": "1337697227",
  15. "lastdown": "0",
  16. "dcheckid": "5",
  17. "ip": "192.168.1.1",
  18. "dns": "station.company.lan"
  19. }
  20. ],
  21. "dhostid": "1",
  22. "druleid": "4",
  23. "status": "0",
  24. "lastup": "1337697227",
  25. "lastdown": "0"
  26. },
  27. {
  28. "dservices": [
  29. {
  30. "dserviceid": "2",
  31. "dhostid": "2",
  32. "type": "4",
  33. "key_": "",
  34. "value": "",
  35. "port": "80",
  36. "status": "0",
  37. "lastup": "1337697234",
  38. "lastdown": "0",
  39. "dcheckid": "5",
  40. "ip": "192.168.1.4",
  41. "dns": "john.company.lan"
  42. }
  43. ],
  44. "dhostid": "2",
  45. "druleid": "4",
  46. "status": "0",
  47. "lastup": "1337697234",
  48. "lastdown": "0"
  49. },
  50. {
  51. "dservices": [
  52. {
  53. "dserviceid": "3",
  54. "dhostid": "3",
  55. "type": "4",
  56. "key_": "",
  57. "value": "",
  58. "port": "80",
  59. "status": "0",
  60. "lastup": "1337697234",
  61. "lastdown": "0",
  62. "dcheckid": "5",
  63. "ip": "192.168.1.26",
  64. "dns": "printer.company.lan"
  65. }
  66. ],
  67. "dhostid": "3",
  68. "druleid": "4",
  69. "status": "0",
  70. "lastup": "1337697234",
  71. "lastdown": "0"
  72. },
  73. {
  74. "dservices": [
  75. {
  76. "dserviceid": "4",
  77. "dhostid": "4",
  78. "type": "4",
  79. "key_": "",
  80. "value": "",
  81. "port": "80",
  82. "status": "0",
  83. "lastup": "1337697234",
  84. "lastdown": "0",
  85. "dcheckid": "5",
  86. "ip": "192.168.1.7",
  87. "dns": "mail.company.lan"
  88. }
  89. ],
  90. "dhostid": "4",
  91. "druleid": "4",
  92. "status": "0",
  93. "lastup": "1337697234",
  94. "lastdown": "0"
  95. }
  96. ],
  97. "id": 1
  98. }

参见

源代码

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