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.

hostprototype.get

説明

integer/array hostprototype.get(object parameters)

このメソッドは、指定されたパラメータに従ってホストプロトタイプを取得することができます。

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

パラメーター

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

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

パラメーター 説明
hostids ID/array 指定したIDのホストプロトタイプのみを返します。
discoveryids ID/array 指定したLLDルールに属するホストプロトタイプのみを返します。
inherited boolean trueに設定すると、テンプレートから継承されたアイテムのみを返します。
selectDiscoveryData query ホストプロトタイプディスカバリーオブジェクトデータを持つdiscoveryDataプロパティを返します。ホストプロトタイプディスカバリーオブジェクトは、検出されたホストプロトタイプを、それが検出されたホストプロトタイプにリンクします。

以下のプロパティを持ちます:
host - (string) ホストのID;
parent_hostid - (string) ホストプロトタイプが作成された元のホストプロトタイプのID;
status - (int) ホストプロトタイプディスカバリーステータス:
0 - (デフォルト) ホストプロトタイプが検出されている,
1 - ホストプロトタイプがもはや検出されていない;
ts_delete - (timestamp) もはや検出されていないホストプロトタイプが削除される時刻;
ts_disable - (timestamp) もはや検出されていないホストプロトタイプが無効化される時刻;
disable_source - (int) ホストプロトタイプがLLDルールまたは手動で無効化されたかどうかの指標:
0 - (デフォルト) 自動的に無効化,
1 - LLDルールによって無効化。
selectDiscoveryRule query ホストプロトタイプが属するLLDルールを持つdiscoveryRuleプロパティを返します。
selectDiscoveryRulePrototype query ホストプロトタイプが属する親LLDルールプロトタイプを持つdiscoveryRulePrototypeプロパティを返します。
selectInterfaces query ホストプロトタイプのカスタムインターフェースを持つinterfacesプロパティを返します。
selectGroupLinks query ホストプロトタイプのグループリンクを持つgroupLinksプロパティを返します。
selectGroupPrototypes query ホストプロトタイプのグループプロトタイプを持つgroupPrototypesプロパティを返します。
selectMacros query ホストプロトタイプのマクロを持つmacrosプロパティを返します。
selectParentHost query ホストプロトタイプが属するホストを持つparentHostプロパティを返します。
selectTags query ホストプロトタイプのタグを持つtagsプロパティを返します。
selectTemplates query ホストプロトタイプにリンクされたテンプレートを持つtemplatesプロパティを返します。

countをサポートします。
sortfield string/array 指定したプロパティで結果をソートします。

可能な値: hostid, host, name, status, discovered
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パラメーターが使用されている場合、取得したオブジェクトの数

LLDルールからホストプロトタイプを取得する

LLDルールから、すべてのホストプロトタイプ、そのグループリンク、グループプロトタイプ、およびタグを取得します。

リクエスト:

{
           "jsonrpc": "2.0",
           "method": "hostprototype.get",
           "params": {
               "output": "extend",
               "selectInterfaces": "extend",
               "selectGroupLinks": "extend",
               "selectGroupPrototypes": "extend",
               "selectTags": "extend",
               "discoveryids": "23554"
           },
           "id": 1
       }

レスポンス:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "hostid": "10092",
                   "host": "{#HV.UUID}",
                   "name": "{#HV.UUID}",
                   "status": "0",
                   "templateid": "0",
                   "flags": "2",
                   "discover": "0",
                   "custom_interfaces": "1",
                   "inventory_mode": "-1",
                   "groupLinks": [
                       {
                           "group_prototypeid": "4",
                           "hostid": "10092",
                           "groupid": "7",
                           "templateid": "0"
                       }
                   ],
                   "groupPrototypes": [
                       {
                           "group_prototypeid": "7",
                           "hostid": "10092",
                           "name": "{#CLUSTER.NAME}",
                           "templateid": "0"
                       }
                   ],
                   "tags": [
                       {
                           "tag": "datacenter",
                           "value": "{#DATACENTER.NAME}"
                       },
                       {
                           "tag": "instance-type",
                           "value": "{#INSTANCE_TYPE}"
                       }
                   ],
                   "interfaces": [
                       {
                           "main": "1",
                           "type": "2",
                           "useip": "1",
                           "ip": "127.0.0.1",
                           "dns": "",
                           "port": "161",
                           "details": {
                               "version": "2",
                               "bulk": "1",
                               "community": "{$SNMP_COMMUNITY}",
                               "max_repetitions": "10"
                           }
                       }
                   ]
               }
           ],
           "id": 1
       }

参照

ソース

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