proxy.create

説明

object proxy.create(object/array proxies)

このメソッドを使用すると、新しいプロキシを作成できます。

このメソッドは、Super admin ユーザータイプでのみ利用できます。メソッドの呼び出し権限は、ユーザーロール設定で取り消すことができます。詳細は User roles を参照してください。

パラメータ

(object/array) 作成するプロキシ。

標準のプロキシプロパティに加えて、このメソッドでは次のパラメータを受け入れます。

パラメータ タイプ 説明
hosts array プロキシによって監視されるホスト。
ホストがすでに別のプロキシによって監視されている場合は、現在のプロキシに再割り当てされます。

ホストにはhostidプロパティのみを定義する必要があります。
apm object プロキシのアプリケーションパフォーマンス監視(APM)設定。

戻り値

(object) proxyidsプロパティの下に作成されたプロキシのIDを含むオブジェクトを返します。返されるIDの順序は、渡されたプロキシの順序と一致します。

例

アクティブプロキシの作成

アクションプロキシ"Active proxy"を作成し、それによって監視されるホストを割り当てます。

リクエスト :

{
    "jsonrpc": "2.0",
    "method": "proxy.create",
    "params": {
        "name": "Active proxy",
        "operating_mode": "0",
        "hosts": [
            {
                "hostid": "10279"
            }
        ]
    },
    "id": 1
}

レスポンス :

{
    "jsonrpc": "2.0",
    "result": {
        "proxyids": [
            "10280"
        ]
    },
    "id": 1
}

パッシブプロキシの作成

パッシブプロキシ"Passive proxy"を作成し、それによって監視される2つのホストを割り当てます。

リクエスト :

{
    "jsonrpc": "2.0",
    "method": "proxy.create",
    "params": {
        "name": "Passive proxy",
        "operating_mode": "1",
        "address": "127.0.0.1",
        "port": "10051",
        "hosts": [
            {
                "hostid": "10192"
            },
            {
                "hostid": "10139"
            }
        ]
    },
    "id": 1
}

レスポンス :

{
    "jsonrpc": "2.0",
    "result": {
        "proxyids": [
            "10284"
        ]
    },
    "id": 1
}

プロキシを作成して、プロキシグループへ追加

アクティブプロキシ"Active proxy"を作成し、ID"1"のプロキシグループに追加します。

リクエスト :

{
    "jsonrpc": "2.0",
    "method": "proxy.create",
    "params": {
        "name": "Active proxy",
        "proxy_groupid": "1",
        "operating_mode": "0"
    },
    "id": 1
}

レスポンス :

{
    "jsonrpc": "2.0",
    "result": {
        "proxyids": [
            "5"
        ]
    },
    "id": 1
}

証明書ベースの暗号化を使用したプロキシの作成

証明書ベースの暗号化を使用してアクティブプロキシを作成します。このプロキシはホスト "10785" を監視するように設定されています。

リクエスト:

{
    "jsonrpc": "2.0",
    "method": "proxy.create",
    "params": {
        "name": "Active proxy",
        "operating_mode": "0",
        "hosts": [
            {
                "hostid": "10785"
            }
        ],
        "tls_accept": "4",
        "tls_issuer": "CN=Signing CA,OU=Development group,O=Zabbix SIA,DC=zabbix,DC=com",
        "tls_subject": "CN=Zabbix server,OU=Development group,O=Zabbix SIA,DC=zabbix,DC=com"
    },
    "id": 1
}

レスポンス:

{
    "jsonrpc": "2.0",
    "result": {
        "proxyids": [
            "2"
        ]
    },
    "id": 1
}

APMを有効にしたプロキシの作成

APMを有効にしたアクティブプロキシ「Active proxy」を作成します。
このプロキシは、1秒あたり最大1000件のメッセージを受け付け、トレースにdeployment.environmentリソース属性を追加し、メトリクスにcloud.regionリソース属性を追加します。

リクエスト:

{
    "jsonrpc": "2.0",
    "method": "proxy.create",
    "params": {
        "name": "Active proxy",
        "operating_mode": "0",
        "apm": {
            "data_collection_status": "1",
            "max_messages_per_second": "1000",
            "additional_resource_attributes": [
                {
                    "key": "deployment.environment",
                    "value": "production",
                    "signal_type": "0"
                },
                {
                    "key": "cloud.region",
                    "value": "eu-central-1",
                    "signal_type": "1"
                }
            ]
        }
    },
    "id": 1
}

レスポンス:

{
    "jsonrpc": "2.0",
    "result": {
        "proxyids": [
            "3"
        ]
    },
    "id": 1
}

関連項目

ソース

CProxy::create() in ui/include/classes/api/services/CProxy.php.