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 プロパティを返します。
selectInheritedTags query リンクされたテンプレート上のタグを含む inheritedTags プロパティを返します。
selectMacros query ホストプロトタイプのマクロを含む macros プロパティを返します。
selectParentHost query ホストプロトタイプが属するホストを含む parentHost プロパティを返します。
selectTags query ホストプロトタイプのタグを含む tags プロパティを返します。
selectTemplates query ホストプロトタイプにリンクされたテンプレートを含む templates プロパティを返します。

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

指定可能な値: hostid, host, name, status, discovered
countOutput boolean これらのパラメータは reference commentary で説明されています。
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",
            "discover": "0",
            "custom_interfaces": "1",
            "uuid": "051a1469d4d045cbbf818fcc843a352e",
            "flags": "2",
            "inventory_mode": "-1",
            "tags": [
                {
                    "tag": "datacenter",
                    "value": "{#DATACENTER.NAME}"
                },
                {
                    "tag": "instance-type",
                    "value": "{#INSTANCE_TYPE}"
                }
            ],
            "groupLinks": [
                {
                    "group_prototypeid": "4",
                    "hostid": "10092",
                    "groupid": "7",
                    "templateid": "0"
                }
            ],
            "groupPrototypes": [
                {
                    "group_prototypeid": "7",
                    "hostid": "10092",
                    "name": "{#CLUSTER.NAME}",
                    "templateid": "0"
                }
            ],
            "interfaces": [
                {
                    "main": "1",
                    "type": "2",
                    "useip": "1",
                    "ip": "127.0.0.1",
                    "dns": "",
                    "port": "161",
                    "available": "0",
                    "error": "",
                    "errors_from": "0",
                    "disable_until": "0",
                    "details": {
                        "version": "2",
                        "bulk": "1",
                        "community": "{$SNMP_COMMUNITY}",
                        "max_repetitions": "10"
                    }
                }
            ]
        }
    ],
    "id": 1
}

関連項目

ソース

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