获取

描述

integer/array dhost.get(object parameters)

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

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

参数

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

这个方法支持以下参数。

参数 类 描述
dhostids 字符串/数组 只返回给 ID 的已发现主机。
druleids 字符串/数组 只返回给 发现规则创建的已发现主机
dserviceids 字符串/数组 只返回运 指定服务的已发现主机
selectDRules 查询 在 drules 属性中以数组形式返回主机发现规则信息。
selectDServices 查询 在 dservices 属性中的返回运行于主机上的服务信息。

支持 count
limitSelects 整数 限 子选择返回的记录数量。

适用于下列子选择:
selectDServices - 结果将按 dserviceid 排序。
sortfield 字符串/数组 根据给定 属性对结果进行排序。

可能的值有:dhostiddruleid
countOutput 布尔值 在[ eference_commentary](/manual/api/reference_commentary#common_get_method_parameters)中详细描述了所有 get 方法的常见参数。
editable 布尔值 ::
excludeSearch 布尔值 ::
filter 对象 : :
limit 整数 : :
output 查询 : :
preservekeys 布尔值 ::
search 对象 : :
searchByAny 布尔值 ::
searchWildcardsEnabled 布尔值 ::
sortorder 字符串/数组 :::
startSearch 布尔值 ::

返回值

(integer/array) 返回:

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

示例

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

检索通过发现规则 "4" 发现的所有正在运行的主机和发现的服务。

请求:

{
           "jsonrpc": "2.0",
           "method": "dhost.get",
           "params": {
               "output": "extend",
               "selectDServices": "extend",
               "druleids": "4"
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

响应:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "dservices": [
                       {
                           "dserviceid": "1",
                           "dhostid": "1",
                           "type": "4",
                           "key_": "",
                           "value": "",
                           "port": "80",
                           "status": "0",
                           "lastup": "1337697227",
                           "lastdown": "0",
                           "dcheckid": "5",
                           "ip": "192.168.1.1",
                           "dns": "station.company.lan"
                       }
                   ],
                   "dhostid": "1",
                   "druleid": "4",
                   "status": "0",
                   "lastup": "1337697227",
                   "lastdown": "0"
               },
               {
                   "dservices": [
                       {
                           "dserviceid": "2",
                           "dhostid": "2",
                           "type": "4",
                           "key_": "",
                           "value": "",
                           "port": "80",
                           "status": "0",
                           "lastup": "1337697234",
                           "lastdown": "0",
                           "dcheckid": "5",
                           "ip": "192.168.1.4",
                           "dns": "john.company.lan"
                       }
                   ],
                   "dhostid": "2",
                   "druleid": "4",
                   "status": "0",
                   "lastup": "1337697234",
                   "lastdown": "0"
               },
               {
                   "dservices": [
                       {
                           "dserviceid": "3",
                           "dhostid": "3",
                           "type": "4",
                           "key_": "",
                           "value": "",
                           "port": "80",
                           "status": "0",
                           "lastup": "1337697234",
                           "lastdown": "0",
                           "dcheckid": "5",
                           "ip": "192.168.1.26",
                           "dns": "printer.company.lan"
                       }
                   ],
                   "dhostid": "3",
                   "druleid": "4",
                   "status": "0",
                   "lastup": "1337697234",
                   "lastdown": "0"
               },
               {
                   "dservices": [
                       {
                           "dserviceid": "4",
                           "dhostid": "4",
                           "type": "4",
                           "key_": "",
                           "value": "",
                           "port": "80",
                           "status": "0",
                           "lastup": "1337697234",
                           "lastdown": "0",
                           "dcheckid": "5",
                           "ip": "192.168.1.7",
                           "dns": "mail.company.lan"
                       }
                   ],
                   "dhostid": "4",
                   "druleid": "4",
                   "status": "0",
                   "lastup": "1337697234",
                   "lastdown": "0"
               }
           ],
           "id": 1
       }

参见

来源

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