Sidebar

zh:manual:api:reference:usermacro:get

获取

说明

integer/array usermacro.get(object parameters)

该方法允许根据给定的参数检索主机宏和全局宏。

参数

(object) 定义所需输出的参数。 该方法支持以下参数。

属性 类型 说明
globalmacro flag 返回全局宏而不是主机宏。
globalmacroids string/array 仅返回具有给定ID的全局宏。
groupids string/array 只返回属于主机的主机宏或来自给定主机组的模板。
hostids string/array 仅返回属于给定主机的主机宏。
hostmacroids string/array 只返回具有给定ID的主机宏。
templateids string/array 只返回属于给定模板的主机宏。
selectGroups query groups属性中返回主机宏所属的主机组。

仅在检索主机宏时使用。
selectHosts query hosts属性中返回主机宏所属的主机。

仅在检索主机宏时使用。
selectTemplates query template属性中返回主机宏所属的模板。

仅在检索主机宏时使用。
sortfield string/array 按照给定的属性对结果进行排序。

可能的值:macro
countOutput boolean这些参数对于所有的“获取”方法是常见的,在页 参考说明 page. 中有详细描述。
editable boolean
excludeSearch boolean
filter object
limit integer
output query
preservekeys boolean
search object
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

返回值

(integer/array) 返回:

  • 一组对象;
  • 如果已经使用“countOutput”参数,则检索到的对象的计数。

示例

检索主机的主机宏

检索主机 “10198” 定义的所有主机宏。

Request:

{
    "jsonrpc": "2.0",
    "method": "usermacro.get",
    "params": {
        "output": "extend",
        "hostids": "10198"
    },
    "auth": "038e1d7b1735c6a5436ee9eae095879e",
    "id": 1
}

Response:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "hostmacroid": "9",
            "hostid": "10198",
            "macro": "{$INTERFACE}",
            "value": "eth0"
        },
        {
            "hostmacroid": "11",
            "hostid": "10198",
            "macro": "{$SNMP_COMMUNITY}",
            "value": "public"
        }
    ],
    "id": 1
}

检索全局宏

检索所有全局宏。

Request:

{
    "jsonrpc": "2.0",
    "method": "usermacro.get",
    "params": {
        "output": "extend",
        "globalmacro": true
    },
    "auth": "038e1d7b1735c6a5436ee9eae095879e",
    "id": 1
}

Response:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "globalmacroid": "6",
            "macro": "{$SNMP_COMMUNITY}",
            "value": "public"
        }
    ],
    "id": 1
}

来源

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