You are viewing documentation for the development version, it may be incomplete.
Join our translation project and help translate Zabbix documentation into your native language.

usermacro.get

説明

integer/array usermacro.get(object parameters)

このメソッドは、指定されたパラメータに従ってホストおよびグローバルマクロを取得することができます。

このメソッドは、すべての種類のユーザーが利用できます。メソッドの呼び出し権限は、ユーザーロールの設定で取り消すことができます。詳細はユーザーロールを参照してください。

パラメーター

(object) 望ましい出力を定義するパラメーター。

このメソッドは以下のパラメーターをサポートします。

パラメーター 説明
globalmacro flag ホストマクロの代わりにグローバルマクロを返します。
globalmacroids ID/array 指定したIDのグローバルマクロのみを返します。
groupids ID/array 指定したホストグループまたはテンプレートグループに属するホストまたはテンプレートのマクロのみを返します。
hostids ID/array 指定したホストまたはテンプレートに属するマクロのみを返します。
hostmacroids ID/array 指定したIDのホストマクロのみを返します。
inherited boolean trueに設定すると、テンプレートから継承されたホストプロトタイプユーザーマクロのみを返します。
selectHostGroups query ホストマクロが属するホストグループをhostgroupsプロパティで返します。

ホストマクロ取得時のみ使用されます。
selectHosts query ホストマクロが属するホストをhostsプロパティで返します。

ホストマクロ取得時のみ使用されます。
selectTemplateGroups query テンプレートマクロが属するテンプレートグループをtemplategroupsプロパティで返します。

テンプレートマクロ取得時のみ使用されます。
selectTemplates query ホストマクロが属するテンプレートをtemplatesプロパティで返します。

ホストマクロ取得時のみ使用されます。
sortfield string/array 指定したプロパティで結果をソートします。

指定可能な値: macro
countOutput boolean これらのパラメーターはリファレンス解説で説明されています。
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" に定義されているすべてのホストマクロを取得します。

リクエスト:

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

レスポンス:

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

テンプレートのホストマクロの取得

マクロ名に "STATUS" を含むテンプレート "10265" に定義されたホストマクロを取得します。

リクエスト:

{
           "jsonrpc": "2.0",
           "method": "usermacro.get",
           "params": {
               "output": "extend",
               "hostids": "10265",
               "search": {
                   "macro": "STATUS"
               }
           },
           "id": 1
       }

レスポンス:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "hostmacroid": "6709",
                   "hostid": "10265",
                   "macro": "{$APACHE.STATUS.HOST}",
                   "value": "",
                   "description": "The hostname or IP address of the Apache status page host.",
                   "type": "0",
                   "automatic": "0",
                   "config": {
                       "type": "1",
                       "priority": "1",
                       "section_name": "",
                       "label": "Apache status host",
                       "description": "Hostname or IP address of the Apache status page host.",
                       "required": "1",
                       "regex": "",
                       "options": []
                   }
               },
               {
                   "hostmacroid": "814",
                   "hostid": "10265",
                   "macro": "{$APACHE.STATUS.PATH}",
                   "value": "server-status?auto",
                   "description": "The URL path of the Apache status page.",
                   "type": "0",
                   "automatic": "0",
                   "config": {
                       "type": "1",
                       "priority": "3",
                       "section_name": "",
                       "label": "Apache status page path",
                       "description": "URL path of the Apache status page.",
                       "required": "1",
                       "regex": "",
                       "options": []
                   }
               },
               {
                   "hostmacroid": "815",
                   "hostid": "10265",
                   "macro": "{$APACHE.STATUS.PORT}",
                   "value": "80",
                   "description": "The port of the Apache status page.",
                   "type": "0",
                   "automatic": "0",
                   "config": {
                       "type": "1",
                       "priority": "2",
                       "section_name": "",
                       "label": "Apache status page port",
                       "description": "In the range from 1 to 65535 inclusive.",
                       "required": "1",
                       "regex": "^-?([0-9]+|(([0-9]+)\\.([0-9]+)))$",
                       "options": []
                   }
               },
               {
                   "hostmacroid": "816",
                   "hostid": "10265",
                   "macro": "{$APACHE.STATUS.SCHEME}",
                   "value": "http",
                   "description": "The request scheme, which may be either HTTP or HTTPS.",
                   "type": "0",
                   "automatic": "0",
                   "config": {
                       "type": "2",
                       "priority": "4",
                       "section_name": "",
                       "label": "Request scheme",
                       "description": "Request scheme, which may be either HTTP or HTTPS.",
                       "required": "0",
                       "regex": "",
                       "options": [
                           {
                               "value": "http",
                               "text": "HTTP"
                           },
                           {
                               "value": "https",
                               "text": "HTTPS"
                           }
                       ]
                   }
               }
           ],
           "id": 1
       }

グローバルマクロの取得

すべてのグローバルマクロを取得します。

リクエスト:

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

レスポンス:

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

ソース

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