ここから少し、楽天モバイルの宣伝になります。

このサイトでアフィリエートや広告を貼るつもりは全然無かったのですが、
6月中に楽天モバイルの契約30件を取るか、船を降りるかするように言われています。

回線の増設を考えている方、お子様に新しく携帯を持たせようと考えている方、
下記リンク先で楽天にログイン後、楽天モバイルの各プランをご検討いただけないでしょうか。
楽天モバイル 紹介リンク

ngx_http_api_module モジュール

設定例
ディレクティブ
     api
     status_zone
互換性
Endpoints
     /
     /nginx
     /processes
     /connections
     /slabs/
     /slabs/{slabZoneName}
     /http/
     /http/requests
     /http/server_zones/
     /http/server_zones/{httpServerZoneName}
     /http/location_zones/
     /http/location_zones/{httpLocationZoneName}
     /http/caches/
     /http/caches/{httpCacheZoneName}
     /http/limit_conns/
     /http/limit_conns/{httpLimitConnZoneName}
     /http/limit_reqs/
     /http/limit_reqs/{httpLimitReqZoneName}
     /http/upstreams/
     /http/upstreams/{httpUpstreamName}/
     /http/upstreams/{httpUpstreamName}/servers/
     /http/upstreams/{httpUpstreamName}/servers/{httpUpstreamServerId}
     /http/keyvals/
     /http/keyvals/{httpKeyvalZoneName}
     /stream/
     /stream/server_zones/
     /stream/server_zones/{streamServerZoneName}
     /stream/limit_conns/
     /stream/limit_conns/{streamLimitConnZoneName}
     /stream/upstreams/
     /stream/upstreams/{streamUpstreamName}/
     /stream/upstreams/{streamUpstreamName}/servers/
     /stream/upstreams/{streamUpstreamName}/servers/{streamUpstreamServerId}
     /stream/keyvals/
     /stream/keyvals/{streamKeyvalZoneName}
     /stream/zone_sync/
     /resolvers/
     /resolvers/{resolverZoneName}
     /ssl
Response Objects

ngx_http_api_module モジュール (1.13.3) は様々な状態情報へのアクセス、upstreamサーバグループのその場での設定、およびnginxの再設定の必要無しの key-value ペアの管理のためのREST APIを提供します。

モジュールはngx_http_status_modulengx_http_upstream_conf_module モジュールに取って代わります。

PATCHまたはPOSTメソッドを使う場合は、ペイロードがクライアントリクエストのボディを読み取るためのバッファサイズを超えないようにしてください。それ以外の場合は413(Request Entity Too Large)エラーが返される場合があります。

このモジュールは商用許可の一部として利用可能です。

設定例

http {
    upstream backend {
        zone http_backend 64k;

        server backend1.example.com weight=5;
        server backend2.example.com;
    }

    proxy_cache_path /data/nginx/cache_backend keys_zone=cache_backend:10m;

    server {
        server_name backend.example.com;

        location / {
            proxy_pass  http://backend;
            proxy_cache cache_backend;

            health_check;
        }

        status_zone server_backend;
    }

    keyval_zone zone=one:32k state=one.keyval;
    keyval $arg_text $text zone=one;

    server {
        listen 127.0.0.1;

        location /api {
            api write=on;
            allow 127.0.0.1;
            deny all;
        }
    }
}

stream {
    upstream backend {
        zone stream_backend 64k;

        server backend1.example.com:12345 weight=5;
        server backend2.example.com:12345;
    }

    server {
        listen      127.0.0.1:12345;
        proxy_pass  backend;
        status_zone server_backend;
        health_check;
    }
}

全てのAPIリクエストはURI内にサポートされるAPI バージョンを含みます。この設定を持つAPIリクエストの例:

http://127.0.0.1/api/8/
http://127.0.0.1/api/8/nginx
http://127.0.0.1/api/8/connections
http://127.0.0.1/api/8/http/requests
http://127.0.0.1/api/8/http/server_zones/server_backend
http://127.0.0.1/api/8/http/caches/cache_backend
http://127.0.0.1/api/8/http/upstreams/backend
http://127.0.0.1/api/8/http/upstreams/backend/servers/
http://127.0.0.1/api/8/http/upstreams/backend/servers/1
http://127.0.0.1/api/8/http/keyvals/one?key=arg1
http://127.0.0.1/api/8/stream/
http://127.0.0.1/api/8/stream/server_zones/server_backend
http://127.0.0.1/api/8/stream/upstreams/
http://127.0.0.1/api/8/stream/upstreams/backend
http://127.0.0.1/api/8/stream/upstreams/backend/servers/1

ディレクティブ

構文: api [write=on|off];
デフォルト: -
コンテキスト: 場所

取り囲んでいるlocationの中でREST APIインタフェースを作動する。このlocationへのアクセスは制限されなければなりません。

write パラメータはAPIが読み込み、あるいは読み込み-書き込みかどうかを決定します。デフォルトでは、APIは読み込みのみです。

全ての API リクエストはURI内にサポートされるAPIバージョンを含めなければなりません。もしリクエストURIがlocationのprefixと等しい場合は、サポートされるAPIのバージョンのリストが返されます。The current API version is “8”.

リクエスト行内の任意の “fields” 引数はリクエストされたオブジェクトのどのフィールドが出力されるかを指定します:

http://127.0.0.1/api/8/nginx?fields=version,build

構文: status_zone zone;
デフォルト: -
コンテキスト: server, location, if in location

このディレクティブはバージョン1.13.12から導入されました。

指定されたzone の 仮想httpあるいはstreamサーバステータス情報のコレクションを有効にします。幾つかのサーバは同じzoneを共有するかも知れません。

1.17.0以降、状態情報はlocationごとに収集することができます。特別な値offは、入れ子になったlocationブロック内の統計コレクションを無効にします。統計は、処理が終了するlocationのコンテキストで収集されることに注意してください。もしリクエストの処理中にinternal redirectが起きたならば、元のlocationとは違うかも知れません。

互換性

エンドポイント

/

サポートされるメソッド:

  • GET - ルートのエンドポイントのリストを返します

    ルートのエンドポイントのリストを返します。

    可能な応答:

    • 200 - 成功。文字列の配列を返します
    • 404 - バージョン不明 (UnknownVersion)。Errorを返します
/nginx

サポートされるメソッド:

  • GET - nginxの実行インスタンスの状態を返します

    nignxのバージョン、ビルド名、アドレス、設定の再読み込みの数、マスターとワーカーのプロセスのIDを返します。

    リクエストのパラメータ:

    fields (string、任意)
    nginxの実行中のインスタンスのどのフィールドが出力されるかを制限します。

    可能な応答:

    • 200 - 成功。nginxを返します
    • 404 - バージョン不明 (UnknownVersion)。Errorを返します
/processes

サポートされるメソッド:

  • GET - nginxのプロセスの状態を返します

    子プロセスの異常終了とrespanwnされた数を返します。

    可能な応答:

    • 200 - 成功。Processesを返します
    • 404 - バージョン不明 (UnknownVersion)。Errorを返します
  • DELETE - nginxのプロセスの統計をリセットします

    異常終了およびrespawnされた子プロセスのカウンタをリセットします。

    可能な応答:

    • 204 - 成功
    • 404 - バージョン不明 (UnknownVersion)。Errorを返します
    • 405 - Method disabled (MethodDisabled)。Errorを返します
/connections

サポートされるメソッド:

  • GET - クライアントの接続統計を返します

    クライアント接続の統計を返します。

    リクエストのパラメータ:

    fields (string、任意)
    接続の統計のどのフィールドが出力されるかを制限します。

    可能な応答:

    • 200 - 成功。Connectionsを返します
    • 404 - バージョン不明 (UnknownVersion)。Errorを返します
  • DELETE - クライアント接続の統計をリセットします

    受け付けられた、および落とされたクライアントの接続の統計をリセットします。

    可能な応答:

    • 204 - 成功
    • 404 - バージョン不明 (UnknownVersion)。Errorを返します
    • 405 - Method disabled (MethodDisabled)。Errorを返します
/slabs/

サポートされるメソッド:

  • GET - 全てのスラブのステータスを返します

    スラブのアロケータを持つ各共有メモリ領域についてのスラブのステータスを返します。

    リクエストのパラメータ:

    fields (string、任意)
    スラブ領域のどのフィールドが出力されるかを制限します。“fields” 値が空の場合、領域名だけが出力されます。

    可能な応答:

/slabs/{slabZoneName}
全てのメソッドに共通のパラメータ:
slabZoneName (string。必須)
slabアロケータを持つ共有メモリ領域の名前。

サポートされるメソッド:

  • GET - スラブの状態を返します

    特定のスラブアロケータを持つ共有メモリ領域について、スラブのステータスを返します。

    リクエストのパラメータ:

    fields (string、任意)
    スラブ領域のどのフィールドが出力されるかを制限します。

    可能な応答:

  • DELETE - スラブの統計をリセットします

    各メモリスロットについて “reqs” と “fails” メトリクスをリセットします。

    可能な応答:

    • 204 - 成功
    • 404 - Slab not found (SlabNotFound), unknown version (UnknownVersion)。Errorを返します
    • 405 - Method disabled (MethodDisabled)。Errorを返します
/http/

サポートされるメソッド:

  • GET - HTTPに関連するエンドポイントのリストを返します

    第一レベルの HTTP エンドポイントのリストを返します。

    可能な応答:

    • 200 - 成功。文字列の配列を返します
    • 404 - バージョン不明 (UnknownVersion)。Errorを返します
/http/requests

サポートされるメソッド:

  • GET - HTTP リクエストの統計を返します

    クライアントのHTTPリクエストのステータスを返します。

    リクエストのパラメータ:

    fields (string、任意)
    クライアント HTTP リクエストの統計のどのフィールドを出力するかを制限します。

    可能な応答:

    • 200 - 成功。HTTP Requestsを返します
    • 404 - バージョン不明 (UnknownVersion)。Errorを返します
  • DELETE - HTTP リクエストの統計をリセットします

    クライアントのHTTPリクエストの総数をリセットします。

    可能な応答:

    • 204 - 成功
    • 404 - バージョン不明 (UnknownVersion)。Errorを返します
    • 405 - Method disabled (MethodDisabled)。Errorを返します
/http/server_zones/

サポートされるメソッド:

  • GET - 全てのHTTPサーバ領域のステータスを返します

    各HTTP server zoneについてのステータス情報を返します。

    リクエストのパラメータ:

    fields (string、任意)
    サーバ領域のどのフィールドが出力されるかを制限します。もし “fields” 値が空の場合、サーバ領域名だけが出力されます。

    可能な応答:

    • 200 - 成功。全てのHTTPサーバ領域についての"HTTP Server Zone" オブジェクトのコレクションを返します
    • 404 - バージョン不明 (UnknownVersion)。Errorを返します
/http/server_zones/{httpServerZoneName}
全てのメソッドに共通のパラメータ:
httpServerZoneName (string。必須)
HTTPサーバ領域の名前。

サポートされるメソッド:

  • GET - HTTPサーバ領域の状態を返します

    特定のHTTPサーバ領域の状態を返します。

    リクエストのパラメータ:

    fields (string、任意)
    サーバ領域のどのフィールドが出力されるかを制限します。

    可能な応答:

    • 200 - 成功。HTTP Server Zoneを返す
    • 404 - Server zone not found (ServerZoneNotFound), unknown version (UnknownVersion)。Errorを返します
  • DELETE - HTTPサーバ領域についての統計をリセットします

    特定のHTTPサーバ領域内で受け付けおよび破棄したリクエスト、応答、受信および送信したバイト数、SSLハンドシェイクのカウンタ、セッションの再利用の統計を返します。

    可能な応答:

    • 204 - 成功
    • 404 - Server zone not found (ServerZoneNotFound), unknown version (UnknownVersion)。Errorを返します
    • 405 - Method disabled (MethodDisabled)。Errorを返します
/http/location_zones/

サポートされるメソッド:

  • GET - 全てのHTTP locationゾーンの状態を返します

    各HTTP location ゾーン の状態情報を返します。

    リクエストのパラメータ:

    fields (string、任意)
    locationゾーンのどのフィールドが出力されるかを制限します。“fields” 値が空の場合、領域名だけが出力されます。

    可能な応答:

    • 200 - 成功。全てのHTTP locationゾーンについての"HTTP Location Zone" オブジェクトのコレクションを返します
    • 404 - バージョン不明 (UnknownVersion)。Errorを返します
/http/location_zones/{httpLocationZoneName}
全てのメソッドに共通のパラメータ:
httpLocationZoneName (string。必須)
HTTP location ゾーンの名前。

サポートされるメソッド:

  • GET - HTTP location ゾーンの状態を返します

    特定のHTTP location ゾーンの状態を返します。

    リクエストのパラメータ:

    fields (string、任意)
    locationゾーンのどのフィールドが出力されるかを制限します。

    可能な応答:

    • 200 - 成功。HTTP Locationゾーンを返す
    • 404 - Location zone not found (LocationZoneNotFound), unknown version (UnknownVersion)。Errorを返します
  • DELETE - locationゾーンの統計をリセットします。

    特定のlocationゾーン内で受け付けおよび破棄したリクエスト、応答、受信および送信したバイト数の統計を返します。

    可能な応答:

    • 204 - 成功
    • 404 - Location zone not found (LocationZoneNotFound), unknown version (UnknownVersion)。Errorを返します
    • 405 - Method disabled (MethodDisabled)。Errorを返します
/http/caches/

サポートされるメソッド:

  • GET - 全てのキャッシュの状態を返します

    proxy_cache_path と他の “*_cache_path” ディレクティブによって設定された各キャッシュの状態を返します。

    リクエストのパラメータ:

    fields (string、任意)
    キャッシュ郎域のどのフィールドが出力されるかを制限します。もし “fields” 値が空の場合、キャッシュ領域の名前だけが出力されます。

    可能な応答:

    • 200 - 成功。全てのHTTPキャッシュについての"HTTP Cache" オブジェクトのコレクションを返します
    • 404 - バージョン不明 (UnknownVersion)。Errorを返します
/http/caches/{httpCacheZoneName}
全てのメソッドに共通のパラメータ:
httpCacheZoneName (string。必須)
キャッシュ領域の名前。

サポートされるメソッド:

  • GET - キャッシュの状態を返します

    特定のキャッシュの状態を返します。

    リクエストのパラメータ:

    fields (string、任意)
    キャッシュ領域のどのフィールドが出力されるかを制限します。

    可能な応答:

    • 200 - 成功。HTTP Cacheを返します
    • 404 - Cache not found (CacheNotFound), unknown version (UnknownVersion)。Errorを返します
  • DELETE - キャッシュの統計をリセットします

    特定のキャッシュ領域のキャッシュ ヒット/ミスの統計をリセットします。

    可能な応答:

    • 204 - 成功
    • 404 - Cache not found (CacheNotFound), unknown version (UnknownVersion)。Errorを返します
    • 405 - Method disabled (MethodDisabled)。Errorを返します
/http/limit_conns/

サポートされるメソッド:

  • GET - 全てのHTTP limit_conn領域のステータスを返します

    各HTTP limit_conn ゾーン の状態情報を返します。

    リクエストのパラメータ:

    fields (string、任意)
    limit_connゾーンのどのフィールドが出力されるかを制限します。“fields” 値が空の場合、領域名だけが出力されます。

    可能な応答:

    • 200 - 成功。全てのHTTP limit connについての"HTTP Connections Limiting"オブジェクトのコレクションを返します
    • 404 - バージョン不明 (UnknownVersion)。Errorを返します
/http/limit_conns/{httpLimitConnZoneName}
全てのメソッドに共通のパラメータ:
httpLimitConnZoneName (string。必須)
limit_conn ゾーンの名前。

サポートされるメソッド:

  • GET - HTTP limit_connゾーンの状態を返します

    特定の HTTP limit_conn ゾーンの状態を返します。

    リクエストのパラメータ:

    fields (string、任意)
    limit_connゾーンのどのフィールドが出力されるかを制限します。

    可能な応答:

    • 200 - 成功。HTTP Connections Limitingを返します
    • 404 - limit_conn not found (LimitConnNotFound), unknown version (UnknownVersion)。Errorを返します
  • DELETE - HTTP limit_connゾーンについての統計をリセットします

    接続の制限の統計をリセットします。

    可能な応答:

    • 204 - 成功
    • 404 - limit_conn not found (LimitConnNotFound), unknown version (UnknownVersion)。Errorを返します
    • 405 - Method disabled (MethodDisabled)。Errorを返します
/http/limit_reqs/

サポートされるメソッド:

  • GET - 全てのHTTP limit_reqゾーンの状態を返します

    各HTTP limit_req ゾーンについての状態情報を返します。

    リクエストのパラメータ:

    fields (string、任意)
    limit_reqゾーンのどのフィールドが出力されるかを制限します。“fields” 値が空の場合、領域名だけが出力されます。

    可能な応答:

    • 200 - 成功。全てのHTTP limit リクエストについての"HTTP リクエストレートの制限"オブジェクトのコレクションを返します
    • 404 - バージョン不明 (UnknownVersion)。Errorを返します
/http/limit_reqs/{httpLimitReqZoneName}
全てのメソッドに共通のパラメータ:
httpLimitReqZoneName (string。必須)
limit_req ゾーンの名前。

サポートされるメソッド:

  • GET - HTTP limit_req ゾーンの状態を返します

    特定のHTTP limit_req ゾーンの状態を返します。

    リクエストのパラメータ:

    fields (string、任意)
    limit_req ゾーンのどのフィールドが出力されるかを制限します。

    可能な応答:

    • 200 - 成功。HTTP Requests Rate Limitingを返します
    • 404 - limit_req not found (LimitReqNotFound), unknown version (UnknownVersion)。Errorを返します
  • DELETE - limit_reqゾーンについての統計をリセットします

    リクエストの制限統計をリセットします。

    可能な応答:

    • 204 - 成功
    • 404 - limit_req not found (LimitReqNotFound), unknown version (UnknownVersion)。Errorを返します
    • 405 - Method disabled (MethodDisabled)。Errorを返します
/http/upstreams/

サポートされるメソッド:

  • GET - 全てのHTTP upstreamサーバグループの状態を返します

    各HTTP upstreamサーバグループとそのサーバの状態を返します。

    リクエストのパラメータ:

    fields (string、任意)
    upstreamサーバグループのどのフィールドが出力されるかを制限します。もし “fields” 値が空の場合、upstreamの名前だけが出力されます。

    可能な応答:

    • 200 - 成功。全てのHTTP upstreamについての"HTTP Upstream" オブジェクトのコレクションを返します
    • 404 - バージョン不明 (UnknownVersion)。Errorを返します
/http/upstreams/{httpUpstreamName}/
全てのメソッドに共通のパラメータ:
httpUpstreamName (string。必須)
HTTP upstreamサーバグループの名前。

サポートされるメソッド:

  • GET - HTTP upstreamサーバグループの状態を返します

    特定のHTTP upstreamサーバグループとそのサーバの状態を返します。

    リクエストのパラメータ:

    fields (string、任意)
    upstreamサーバグループのどのフィールドが出力されるかを制限します。

    可能な応答:

    • 200 - 成功。HTTP Upstreamを返します
    • 400 - Upstream is static (UpstreamStatic)。Errorを返します
    • 404 - Unknown version (UnknownVersion), upstream not found (UpstreamNotFound)。Errorを返します
  • DELETE - HTTP upstream サーバグループの統計をリセットします

    upstreamサーバグループ内の各upstreamサーバについての統計とキューの統計をリセットします。

    可能な応答:

    • 204 - 成功
    • 400 - Upstream is static (UpstreamStatic)。Errorを返します
    • 404 - Unknown version (UnknownVersion), upstream not found (UpstreamNotFound)。Errorを返します
    • 405 - Method disabled (MethodDisabled)。Errorを返します
/http/upstreams/{httpUpstreamName}/servers/
全てのメソッドに共通のパラメータ:
httpUpstreamName (string。必須)
upstream サーバグループの名前。

サポートされるメソッド:

  • GET - HTTP upstreamサーバグループ内の全てのサーバの設定を返します

    特定のHTTP upstreamサーバグループ内の各サーバの設定を返します。

    可能な応答:

    • 200 - 成功。HTTP Upstream Serversの配列を返します
    • 400 - Upstream is static (UpstreamStatic)。Errorを返します
    • 404 - Unknown version (UnknownVersion), upstream not found (UpstreamNotFound)。Errorを返します
  • POST - サーバをHTTP upstreamサーバグループへ追加します

    新しいサーバをHTTP upstreamサーバグループに追加します。サーバのパラメータはJSON形式で指定されます。

    リクエストのパラメータ:

    postHttpUpstreamServer (HTTP Upstream Server。必須)
    JSON形式の新しいサーバのアドレスと他の任意のパラメータ“ID”, “backup” および “service” パラメータは変更することができません。

    可能な応答:

    • 201 - 生成された。HTTP Upstream Serverを返します
    • 400 - Upstream is static (UpstreamStatic), invalid “parameter” value (UpstreamConfFormatError), missing “server” argument (UpstreamConfFormatError), unknown parameter “name” (UpstreamConfFormatError), nested object or list (UpstreamConfFormatError), “error” while parsing (UpstreamBadAddress), service upstream “host” may not have port (UpstreamBadAddress), service upstream “host” requires domain name (UpstreamBadAddress), invalid “weight” (UpstreamBadWeight), invalid “max_conns” (UpstreamBadMaxConns), invalid “max_fails” (UpstreamBadMaxFails), invalid “fail_timeout” (UpstreamBadFailTimeout), invalid “slow_start” (UpstreamBadSlowStart), reading request body failed BodyReadError), route is too long (UpstreamBadRoute), “service” is empty (UpstreamBadService), no resolver defined to resolve (UpstreamConfNoResolver), upstream “name” has no backup (UpstreamNoBackup), upstream “name” memory exhausted (UpstreamOutOfMemory)。Errorを返します
    • 404 - Unknown version (UnknownVersion), upstream not found (UpstreamNotFound)。Errorを返します
    • 405 - Method disabled (MethodDisabled)。Errorを返します
    • 409 - Entry exists (EntryExists)。Errorを返します
    • 415 - JSON error (JsonError)。Errorを返します
/http/upstreams/{httpUpstreamName}/servers/{httpUpstreamServerId}
全てのメソッドに共通のパラメータ:
httpUpstreamName (string。必須)
upstreamサーバグループの名前。
httpUpstreamServerId (string。必須)
サーバのID。

サポートされるメソッド:

  • GET - HTTP upstreamサーバグループ内のサーバの設定を返します

    HTTP upstreamサーバグループ内の特定のサーバの設定を返します。

    可能な応答:

    • 200 - 成功。HTTP Upstream Serverを返します
    • 400 - Upstream is static (UpstreamStatic), invalid server ID (UpstreamBadServerId)。Errorを返します
    • 404 - Server with ID “id” does not exist (UpstreamServerNotFound), unknown version (UnknownVersion), upstream not found (UpstreamNotFound)。Errorを返します
  • PATCH - HTTP upstreamサーバグループ内のサーバを修正します

    HTTP upstreamサーバグループ内の特定のサーバの設定を修正します。サーバのパラメータはJSON形式で指定されます。

    リクエストのパラメータ:

    patchHttpUpstreamServer (HTTP Upstream Server。必須)
    JSON形式で指定されるサーバのパラメータ。“ID”, “backup” および “service” パラメータは変更することができません。

    可能な応答:

    • 200 - 成功。HTTP Upstream Serverを返します
    • 400 - Upstream is static (UpstreamStatic), invalid “parameter” value (UpstreamConfFormatError), unknown parameter “name” (UpstreamConfFormatError), nested object or list (UpstreamConfFormatError), “error” while parsing (UpstreamBadAddress), invalid “server” argument (UpstreamBadAddress), invalid server ID (UpstreamBadServerId), invalid “weight” (UpstreamBadWeight), invalid “max_conns” (UpstreamBadMaxConns), invalid “max_fails” (UpstreamBadMaxFails), invalid “fail_timeout” (UpstreamBadFailTimeout), invalid “slow_start” (UpstreamBadSlowStart), reading request body failed BodyReadError), route is too long (UpstreamBadRoute), “service” is empty (UpstreamBadService), server “ID” address is immutable (UpstreamServerImmutable), server “ID” weight is immutable (UpstreamServerWeightImmutable), upstream “name” memory exhausted (UpstreamOutOfMemory)。Errorを返します
    • 404 - Server with ID “id” does not exist (UpstreamServerNotFound), unknown version (UnknownVersion), upstream not found (UpstreamNotFound)。Errorを返します
    • 405 - Method disabled (MethodDisabled)。Errorを返します
    • 415 - JSON error (JsonError)。Errorを返します
  • DELETE - HTTP upstreamサーバグループからサーバを削除します

    HTTP upstreamサーバグループからサーバを削除します。

    可能な応答:

    • 200 - 成功。HTTP Upstream Serversの配列を返します
    • 400 - Upstream is static (UpstreamStatic), invalid server ID (UpstreamBadServerId), server “id” not removable (UpstreamServerImmutable)。Errorを返します
    • 404 - Server with ID “id” does not exist (UpstreamServerNotFound), unknown version (UnknownVersion), upstream not found (UpstreamNotFound)。Errorを返します
    • 405 - Method disabled (MethodDisabled)。Errorを返します
/http/keyvals/

サポートされるメソッド:

  • GET - 全てのHTTP keyval 領域からキー-値のペアを返します

    各HTTP keyval共有メモリzoneについてキー-値ペアを返します。

    リクエストのパラメータ:

    fields (string、任意)
    もし “fields”値が空の場合、HTTP keyval領域名だけが出力されます。

    可能な応答:

    • 200 - 成功。全てのHTTP keyvalについての"HTTP Keyval Shared Memory Zone" オブジェクトのコレクションを返します
    • 404 - バージョン不明 (UnknownVersion)。Errorを返します
/http/keyvals/{httpKeyvalZoneName}
全てのメソッドに共通のパラメータ:
httpKeyvalZoneName (string。必須)
HTTP keyval 共有メモリ領域の名前。

サポートされるメソッド:

  • GET - HTTP keyval 領域からキー-値のペアを返します

    特定のHTTP keyval共有メモリzoneに格納されているキー-値ペアを返します。

    リクエストのパラメータ:

    key (string。任意)
    HTTP keyval領域から特定のキー-値ペアを取得します。

    可能な応答:

    • 200 - 成功。HTTP Keyval Shared Memory Zoneを返します
    • 404 - Keyval not found (KeyvalNotFound), keyval key not found (KeyvalKeyNotFound), unknown version (UnknownVersion)。Errorを返します
  • POST - キー-値ペアをHTTP keyval領域に追加します

    新しいキー-値ペアをHTTP keyval共有メモリzoneに追加します。もしHTTP keyval 共有メモリ領域が空の場合は、幾つかのキー-値ペアを入れることができます。

    リクエストのパラメータ:

    Key-value (HTTP Keyval Shared Memory Zone。必須)
    キー-値ペアはJSON形式で指定されます。もしHTTP keyval 共有メモリ領域が空の場合は、幾つかのキー-値ペアを入れることができます。keyval_zonetimeoutパラメータを上書きするexpireパラメータを使って、key-valueペアについての期限切れ時間のミリ秒を指定することができます。

    可能な応答:

    • 201 - 作成されました
    • 400 - Invalid JSON (KeyvalFormatError), invalid key format (KeyvalFormatError), key required (KeyvalFormatError), keyval timeout is not enabled (KeyvalFormatError), only one key can be added (KeyvalFormatError), reading request body failed BodyReadError)。Errorを返します
    • 404 - Keyval not found (KeyvalNotFound), unknown version (UnknownVersion)。Errorを返します
    • 405 - Method disabled (MethodDisabled)。Errorを返します
    • 409 - Entry exists (EntryExists), key already exists (KeyvalKeyExists)。Errorを返します
    • 413 - Request Entity Too Large。Errorを返します
    • 415 - JSON error (JsonError)。Errorを返します
  • PATCH - キー-値を修正あるいはキーを削除します

    キー-値ペア内の選択されたキーの値を変更、あるいはキーの値をnullに設定することでキーを削除、キー-値ペアの有効期限を変更します。クラスタのkeyvalゾーンのsynchronizationが有効な場合、目的のクラスタノードのキーのみを削除します。keyval_zonetimeoutパラメータを上書きするexpireパラメータを使って、key-valueペアについての有効期限のミリ秒を指定することができます。

    リクエストのパラメータ:

    httpKeyvalZoneKeyValue (HTTP Keyval Shared Memory Zone。必須)
    キーについての新しい値はJSON形式で指定されます。

    可能な応答:

    • 204 - 成功
    • 400 - Invalid JSON (KeyvalFormatError), key required (KeyvalFormatError), keyval timeout is not enabled (KeyvalFormatError), only one key can be updated (KeyvalFormatError), reading request body failed BodyReadError)。Errorを返します
    • 404 - Keyval not found (KeyvalNotFound), keyval key not found (KeyvalKeyNotFound), unknown version (UnknownVersion)。Errorを返します
    • 405 - Method disabled (MethodDisabled)。Errorを返します
    • 413 - Request Entity Too Large。Errorを返します
    • 415 - JSON error (JsonError)。Errorを返します
  • DELETE - HTTP keyval領域を空にします

    HTTP keyval共有メモリzoneから全てのキー-値ペアを削除します。クラスタのkeyvalゾーンのsynchronizationが有効な場合、目的のクラスタノードのkeyvalゾーンを空にします。

    可能な応答:

    • 204 - 成功
    • 404 - Keyval not found (KeyvalNotFound), unknown version (UnknownVersion)。Errorを返します
    • 405 - Method disabled (MethodDisabled)。Errorを返します
/stream/

サポートされるメソッド:

  • GET - ストリームに関係するエンドポイントのリストを返します

    第一レベルのストリーム エンドポイントのリストを返します。

    可能な応答:

    • 200 - 成功。文字列の配列を返します
    • 404 - バージョン不明 (UnknownVersion)。Errorを返します
/stream/server_zones/

サポートされるメソッド:

  • GET - 全てのストリーム サーバ領域の状態を返します

    各ストリーム server zoneについてのステータス情報を返します。

    リクエストのパラメータ:

    fields (string、任意)
    サーバ領域のどのフィールドが出力されるかを制限します。もし “fields” 値が空の場合、サーバ領域名だけが出力されます。

    可能な応答:

    • 200 - 成功。全てのストリームサーバ領域についての"Stream Server Zone" オブジェクトのコレクションを返します
    • 404 - バージョン不明 (UnknownVersion)。Errorを返します
/stream/server_zones/{streamServerZoneName}
全てのメソッドに共通のパラメータ:
streamServerZoneName (string。必須)
ストリーム サーバ領域の名前。

サポートされるメソッド:

  • GET - ストリーム サーバ領域の状態を返します

    特定のストリーム サーバ領域の状態を返します。

    リクエストのパラメータ:

    fields (string、任意)
    サーバ領域のどのフィールドが出力されるかを制限します。

    可能な応答:

    • 200 - 成功。Stream Server Zoneを返します
    • 404 - Server zone not found (ServerZoneNotFound), unknown version (UnknownVersion)。Errorを返します
  • DELETE - ストリーム サーバ領域についての統計をリセットします

    特定のstreamサーバ領域内で受け付けおよび破棄した接続、セッション、受信および送信したバイト数、SSLハンドシェイクのカウンタ、セッションの再利用の統計を返します。

    可能な応答:

    • 204 - 成功
    • 404 - Server zone not found (ServerZoneNotFound), unknown version (UnknownVersion)。Errorを返します
    • 405 - Method disabled (MethodDisabled)。Errorを返します
/stream/limit_conns/

サポートされるメソッド:

  • GET - 全てのストリーム limit_conn ゾーンの状態を返します

    各stream limit_conn ゾーン の状態情報を返します。

    リクエストのパラメータ:

    fields (string、任意)
    limit_connゾーンのどのフィールドが出力されるかを制限します。“fields” 値が空の場合、領域名だけが出力されます。

    可能な応答:

    • 200 - 成功。全てのstream limit connについての"Stream Connections Limiting"オブジェクトのコレクションを返します
    • 404 - バージョン不明 (UnknownVersion)。Errorを返します
/stream/limit_conns/{streamLimitConnZoneName}
全てのメソッドに共通のパラメータ:
streamLimitConnZoneName (string。必須)
limit_conn ゾーンの名前。

サポートされるメソッド:

  • GET - ストリーム limit_conn ゾーンの状態を返します

    特定のstream limit_conn ゾーンの状態を返します。

    リクエストのパラメータ:

    fields (string、任意)
    limit_connゾーンのどのフィールドが出力されるかを制限します。

    可能な応答:

    • 200 - 成功。Stream Connections Limitingを返します
    • 404 - limit_conn not found (LimitConnNotFound), unknown version (UnknownVersion)。Errorを返します
  • DELETE - ストリーム limit_conn ゾーンについての統計をリセットします

    接続の制限の統計をリセットします。

    可能な応答:

    • 204 - 成功
    • 404 - limit_conn not found (LimitConnNotFound), unknown version (UnknownVersion)。Errorを返します
    • 405 - Method disabled (MethodDisabled)。Errorを返します
/stream/upstreams/

サポートされるメソッド:

  • GET - 全てのストリーム upstreamサーバグループについての状態を返します

    各ストリーム upstreamサーバグループとそのサーバの状態を返します。

    リクエストのパラメータ:

    fields (string、任意)
    upstreamサーバグループのどのフィールドが出力されるかを制限します。もし “fields” 値が空の場合、upstreamの名前だけが出力されます。

    可能な応答:

    • 200 - 成功。全てのストリーム upstreamの"Stream Upstream" オブジェクトのコレクションを返します
    • 404 - バージョン不明 (UnknownVersion)。Errorを返します
/stream/upstreams/{streamUpstreamName}/
全てのメソッドに共通のパラメータ:
streamUpstreamName (string。必須)
ストリーム upstream サーバグループの名前。

サポートされるメソッド:

  • GET - ストリーム upstream サーバグループの状態を返します

    特定のストリーム upstreamサーバグループとそのサーバの状態を返します。

    リクエストのパラメータ:

    fields (string、任意)
    upstreamサーバグループのどのフィールドが出力されるかを制限します。

    可能な応答:

    • 200 - 成功。Stream Upstreamを返します
    • 400 - Upstream is static (UpstreamStatic)。Errorを返します
    • 404 - Unknown version (UnknownVersion), upstream not found (UpstreamNotFound)。Errorを返します
  • DELETE - ストリーム upstreamサーバグループの統計を返します

    upstreamサーバグループ内の各upstreamサーバについての統計を返します。

    可能な応答:

    • 204 - 成功
    • 400 - Upstream is static (UpstreamStatic)。Errorを返します
    • 404 - Unknown version (UnknownVersion), upstream not found (UpstreamNotFound)。Errorを返します
    • 405 - Method disabled (MethodDisabled)。Errorを返します
/stream/upstreams/{streamUpstreamName}/servers/
全てのメソッドに共通のパラメータ:
streamUpstreamName (string。必須)
upstream サーバグループの名前。

サポートされるメソッド:

  • GET - ストリーム upstreamサーバグループ内の全てのサーバの設定を返します

    特定のストリーム upstreamサーバグループ内の各サーバの設定を返します。

    可能な応答:

    • 200 - 成功。Stream Upstream Serversの配列を返します
    • 400 - Upstream is static (UpstreamStatic)。Errorを返します
    • 404 - Unknown version (UnknownVersion), upstream not found (UpstreamNotFound)。Errorを返します
  • POST - サーバをストリーム upstreamサーバグループへ追加します

    新しいサーバをストリーム upstreamサーバグループに追加します。サーバのパラメータはJSON形式で指定されます。

    リクエストのパラメータ:

    postStreamUpstreamServer (Stream Upstream Server。必須)
    JSON形式の新しいサーバのアドレスと他の任意のパラメータ“ID”, “backup” および “service” パラメータは変更することができません。

    可能な応答:

    • 201 - 作成された。Stream Upstream Serverを返します
    • 400 - Upstream is static (UpstreamStatic), invalid “parameter” value (UpstreamConfFormatError), missing “server” argument (UpstreamConfFormatError), unknown parameter “name” (UpstreamConfFormatError), nested object or list (UpstreamConfFormatError), “error” while parsing (UpstreamBadAddress), no port in server “host” (UpstreamBadAddress), service upstream “host” may not have port (UpstreamBadAddress), service upstream “host” requires domain name (UpstreamBadAddress), invalid “weight” (UpstreamBadWeight), invalid “max_conns” (UpstreamBadMaxConns), invalid “max_fails” (UpstreamBadMaxFails), invalid “fail_timeout” (UpstreamBadFailTimeout), invalid “slow_start” (UpstreamBadSlowStart), “service” is empty (UpstreamBadService), no resolver defined to resolve (UpstreamConfNoResolver), upstream “name” has no backup (UpstreamNoBackup), upstream “name” memory exhausted (UpstreamOutOfMemory), reading request body failed BodyReadError)。Errorを返します
    • 404 - Unknown version (UnknownVersion), upstream not found (UpstreamNotFound)。Errorを返します
    • 405 - Method disabled (MethodDisabled)。Errorを返します
    • 409 - Entry exists (EntryExists)。Errorを返します
    • 415 - JSON error (JsonError)。Errorを返します
/stream/upstreams/{streamUpstreamName}/servers/{streamUpstreamServerId}
全てのメソッドに共通のパラメータ:
streamUpstreamName (string。必須)
upstreamサーバグループの名前。
streamUpstreamServerId (string。必須)
サーバのID。

サポートされるメソッド:

  • GET - ストリーム upstreamサーバグループ内のサーバの設定を返します

    ストリーム upstreamサーバグループ内の特定のサーバの設定を返します。

    可能な応答:

    • 200 - 成功。Stream Upstream Serverを返します
    • 400 - Upstream is static (UpstreamStatic), invalid server ID (UpstreamBadServerId)。Errorを返します
    • 404 - Unknown version (UnknownVersion), upstream not found (UpstreamNotFound), server with ID “id” does not exist (UpstreamServerNotFound)。Errorを返します
  • PATCH - ストリーム upstreamサーバグループ内のサーバを修正します

    ストリーム upstreamサーバグループ内の特定のサーバの設定を修正します。サーバのパラメータはJSON形式で指定されます。

    リクエストのパラメータ:

    patchStreamUpstreamServer (Stream Upstream Server。必須)
    JSON形式で指定されるサーバのパラメータ。“ID”, “backup” および “service” パラメータは変更することができません。

    可能な応答:

    • 200 - 成功。Stream Upstream Serverを返します
    • 400 - Upstream is static (UpstreamStatic), invalid “parameter” value (UpstreamConfFormatError), unknown parameter “name” (UpstreamConfFormatError), nested object or list (UpstreamConfFormatError), “error” while parsing (UpstreamBadAddress), invalid “server” argument (UpstreamBadAddress), no port in server “host” (UpstreamBadAddress), invalid server ID (UpstreamBadServerId), invalid “weight” (UpstreamBadWeight), invalid “max_conns” (UpstreamBadMaxConns), invalid “max_fails” (UpstreamBadMaxFails), invalid “fail_timeout” (UpstreamBadFailTimeout), invalid “slow_start” (UpstreamBadSlowStart), reading request body failed BodyReadError), “service” is empty (UpstreamBadService), server “ID” address is immutable (UpstreamServerImmutable), server “ID” weight is immutable (UpstreamServerWeightImmutable), upstream “name” memory exhausted (UpstreamOutOfMemory)。Errorを返します
    • 404 - Server with ID “id” does not exist (UpstreamServerNotFound), unknown version (UnknownVersion), upstream not found (UpstreamNotFound)。Errorを返します
    • 405 - Method disabled (MethodDisabled)。Errorを返します
    • 415 - JSON error (JsonError)。Errorを返します
  • DELETE - ストリーム upstreamサーバグループからサーバを削除します

    ストリーム サーバ グループからサーバを削除します。

    可能な応答:

    • 200 - 成功。Stream Upstream Serversの配列を返します
    • 400 - Upstream is static (UpstreamStatic), invalid server ID (UpstreamBadServerId), server “id” not removable (UpstreamServerImmutable)。Errorを返します
    • 404 - Server with ID “id” does not exist (UpstreamServerNotFound), unknown version (UnknownVersion), upstream not found (UpstreamNotFound)。Errorを返します
    • 405 - Method disabled (MethodDisabled)。Errorを返します
/stream/keyvals/

サポートされるメソッド:

  • GET - 全てのストリーム keyval領域からキー-値ペアを返します

    各ストリーム keyval共有メモリzoneからキー-値ペアを返します。

    リクエストのパラメータ:

    fields (string、任意)
    もし “fields” 値が空の場合、ストリーム keyval領域名だけが出力されます。

    可能な応答:

    • 200 - 成功。全てのストリーム keyval についての "Stream Keyval Shared Memory Zone" オブジェクトのコレクションを返します
    • 404 - バージョン不明 (UnknownVersion)。Errorを返します
/stream/keyvals/{streamKeyvalZoneName}
全てのメソッドに共通のパラメータ:
streamKeyvalZoneName (string。必須)
ストリーム keyval 共有メモリ領域の名前。

サポートされるメソッド:

  • GET - ストリーム keyval領域からキー-値ペアを返します

    特定のストリーム keyval共有メモリzoneに格納されているキー-値ペアを返します。

    リクエストのパラメータ:

    key (string。任意)
    ストリーム keyval領域から特定のキー-値ペアを取得します。

    可能な応答:

    • 200 - 成功。Stream Keyval Shared Memory Zoneを返します
    • 404 - Keyval not found (KeyvalNotFound), keyval key not found (KeyvalKeyNotFound), unknown version (UnknownVersion)。Errorを返します
  • POST - キー-値ペアをストリーム keyval領域に追加します

    新しいキー-値ペアをストリーム keyval共有メモリzoneに追加します。もしストリーム keyval 共有メモリ領域が空の場合は、幾つかのキー-値ペアを入れることができます。

    リクエストのパラメータ:

    Key-value (Stream Keyval Shared Memory Zone。必須)
    キー-値ペアはJSON形式で指定されます。もしストリーム keyval 共有メモリ領域が空の場合は、幾つかのキー-値ペアを入れることができます。keyval_zonetimeoutパラメータを上書きするexpireパラメータを使って、key-valueペアについての期限切れ時間のミリ秒を指定することができます。

    可能な応答:

    • 201 - 作成されました
    • 400 - Invalid JSON (KeyvalFormatError), invalid key format (KeyvalFormatError), key required (KeyvalFormatError), keyval timeout is not enabled (KeyvalFormatError), only one key can be added (KeyvalFormatError), reading request body failed BodyReadError)。Errorを返します
    • 404 - Keyval not found (KeyvalNotFound), unknown version (UnknownVersion)。Errorを返します
    • 405 - Method disabled (MethodDisabled)。Errorを返します
    • 409 - Entry exists (EntryExists), key already exists (KeyvalKeyExists)。Errorを返します
    • 413 - Request Entity Too Large。Errorを返します
    • 415 - JSON error (JsonError)。Errorを返します
  • PATCH - キー-値を修正あるいはキーを削除します

    キー-値ペア内の選択されたキーの値を変更、あるいはキーの値をnullに設定することでキーを削除、キー-値ペアの有効期限を変更します。クラスタのkeyvalゾーンのsynchronizationが有効な場合、目的のクラスタノードのキーのみを削除します。keyval_zonetimeoutパラメータを上書きするexpireパラメータを使って、有効期限のミリ秒を指定することができます。

    リクエストのパラメータ:

    streamKeyvalZoneKeyValue (Stream Keyval Shared Memory Zone。必須)
    キーについての新しい値はJSON形式で指定されます。

    可能な応答:

    • 204 - 成功
    • 400 - Invalid JSON (KeyvalFormatError), key required (KeyvalFormatError), keyval timeout is not enabled (KeyvalFormatError), only one key can be updated (KeyvalFormatError), reading request body failed BodyReadError)。Errorを返します
    • 404 - Keyval not found (KeyvalNotFound), keyval key not found (KeyvalKeyNotFound), unknown version (UnknownVersion)。Errorを返します
    • 405 - Method disabled (MethodDisabled)。Errorを返します
    • 413 - Request Entity Too Large。Errorを返します
    • 415 - JSON error (JsonError)。Errorを返します
  • DELETE - ストリーム keyval領域を空にします

    ストリーム keyval共有メモリzoneから全てのキー-値ペアを削除します。クラスタのkeyvalゾーンのsynchronizationが有効な場合、目的のクラスタノードのkeyvalゾーンを空にします。

    可能な応答:

    • 204 - 成功
    • 404 - Keyval not found (KeyvalNotFound), unknown version (UnknownVersion)。Errorを返します
    • 405 - Method disabled (MethodDisabled)。Errorを返します
/stream/zone_sync/

サポートされるメソッド:

  • GET - ノードの同期状態を返します

    クラスタノードの同期状態を返します。

    可能な応答:

/resolvers/

サポートされるメソッド:

  • GET - 全てのリゾルバゾーンの状態を返します

    リゾルバゾーンの状態情報を返します。

    リクエストのパラメータ:

    fields (string、任意)
    リゾルバ統計のどのフィールドが出力されるかを制限します。

    可能な応答:

    • 200 - 成功。全てのリゾルバについての"リゾルバゾーン" オブジェクトのコレクションを返します
    • 404 - バージョン不明 (UnknownVersion)。Errorを返します
/resolvers/{resolverZoneName}
全てのメソッドに共通のパラメータ:
resolverZoneName (string。必須)
リゾルバゾーンの名前。

サポートされるメソッド:

  • GET - リゾルバゾーンの統計を返します

    特定のリゾルバゾーンに格納されている統計を返します。

    リクエストのパラメータ:

    fields (string、任意)
    リゾルバ領域どのフィールドが出力されるかを制限します(requests、responses、あるいは両方)

    可能な応答:

    • 200 - 成功。リゾルバゾーンを返します
    • 404 - Resolver zone not found (ResolverZoneNotFound), unknown version (UnknownVersion)。Errorを返します
  • DELETE - リゾルバゾーンの統計をリセットします。

    特定のリゾルバゾーンの統計をリセットします。

    可能な応答:

    • 204 - 成功
    • 404 - Resolver zone not found (ResolverZoneNotFound), unknown version (UnknownVersion)。Errorを返します
    • 405 - Method disabled (MethodDisabled)。Errorを返します
/ssl

サポートされるメソッド:

  • GET - SSLの統計を返します

    SSL統計を返します。

    リクエストのパラメータ:

    fields (string、任意)
    SSL統計のどのフィールドが出力されるかを制限します。

    可能な応答:

    • 200 - 成功。SSLを返します
    • 404 - バージョン不明 (UnknownVersion)。Errorを返します
  • DELETE - SSL統計をリセットします。

    SSLハンドシェイクとセッションの再利用のカウンタをリセットします。

    可能な応答:

    • 204 - 成功
    • 404 - バージョン不明 (UnknownVersion)。Errorを返します
    • 405 - Method disabled (MethodDisabled)。Errorを返します

応答オブジェクト

TOP
inserted by FC2 system