Sidebar

zh:manual:api:reference:hostprototype:get

获取

描述

integer/array hostprototype.get(object parameters)

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

参数

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

该方法支持如下属性:

参数 类型 描述
hostids 字符串/数组 返回给定ID的主机原型。
discoveryids 字符串/数组 返回归属给定LLD规则的主机原型。
inherited 布尔值 如果设置为true,只返回模板从模板继承的项目。
selectDiscoveryRule 查询 discoveryRule属性中返回主机原型归属的LLD规则。
selectGroupLinks 查询 groupLinks属性中返回主机原型的组链接。
selectGroupPrototypes 查询 groupPrototypes属性中返回主机原型的组原型。
selectMacros 查询 macros 属性中返回主机原型的宏。
selectParentHost 查询 parentHost属性中返回主机原型所属的主机。
selectTemplates 查询 templates属性中返回连接到主机原型的模板。
sortfield 字符串/数组 按照给定的属性对结果进行排序。

可能的值:hostidhostnamestatus
countOutput 布尔值这些参数对于所有get方法都是通用的,详情可参考通用Zabbix API信息.
editable 布尔值
excludeSearch 布尔值
filter 对象
limit 整数
output 查询
preservekeys 布尔值
search 对象
searchByAny 布尔值
searchWildcardsEnabled 布尔值
sortorder 字符串/数组
startSearch 布尔值

返回值

(integer/array) 返回:

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

示例

从LLD规则中获取主机原型

从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",
            "discover": "0",
            "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 ui/include/classes/api/services/CHostPrototype.php.