2022 Zabbix中国峰会
2022 Zabbix中国峰会

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 flag T这些参数对于所有的“获取”方法是常见的,在页 参考评论 page. 中有详细描述。
editable boolean
excludeSearch flag
filter object
limit integer
output query
preservekeys flag
search object
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch flag

返回值

(integer/array) 返回:

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

示例

Retrieving host macros for a host

Retrieve all host macros defined for host "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
       }

Retrieving global macros

Retrieve all global macros.

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.