ngx_http_api_module モジュール
ngx_http_api_module
モジュール (1.13.3) は様々な状態情報へのアクセス、upstreamサーバグループのその場での設定、およびnginxの再設定の必要無しの key-value ペアの管理のためのREST APIを提供します。
モジュールはngx_http_status_module と ngx_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
[ |
---|---|
デフォルト: | - |
コンテキスト: |
場所 |
取り囲んでいる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 |
---|---|
デフォルト: | - |
コンテキスト: |
server , location , if in location |
このディレクティブはバージョン1.13.12から導入されました。
指定されたzone
の 仮想httpあるいはstreamサーバステータス情報のコレクションを有効にします。幾つかのサーバは同じzoneを共有するかも知れません。
1.17.0以降、状態情報はlocationごとに収集することができます。特別な値off
は、入れ子になったlocationブロック内の統計コレクションを無効にします。統計は、処理が終了するlocationのコンテキストで収集されることに注意してください。もしリクエストの処理中にinternal redirectが起きたならば、元のlocationとは違うかも知れません。
互換性
-
HTTP upstream、server zone、stream upstream、server zoneでの
ssl
データは、version 8で追加されました。 -
HTTP upstream、server zone、location zoneでの
responses
のcodes
データは、version 7で追加されました。 - /stream/limit_conns/データはバージョン 6で追加されました。
- /http/limit_conns/データはバージョン 6で追加されました。
- /http/limit_reqs/データはバージョン 6で追加されました。
-
key-valueペアの“
expire
”パラメータは、バージョン5以降で設定あるいは変更することができます。 - /resolvers/データはバージョン 5で追加されました。
- /http/location_zones/データはバージョン 5で追加されました。
-
nginxエラーオブジェクトの
path
とmethod
フィールドはバージョン 4で削除されました。これらのフィールドは、以前のapiバージョンでも引き続き存在しますが、空の値が表示されます。 - /stream/zone_sync/ データはversion 3 で追加されました。
- drain パラメータはversion 2 で追加されました。
- /stream/keyvals/ データはversion 2 で追加されました。
エンドポイント
-
/
-
サポートされるメソッド:
-
GET
- ルートのエンドポイントのリストを返しますルートのエンドポイントのリストを返します。
可能な応答:
- 200 - 成功。文字列の配列を返します
- 404 - バージョン不明 (
UnknownVersion
)。Errorを返します
-
-
/nginx
-
サポートされるメソッド:
-
/processes
-
サポートされるメソッド:
-
GET
- nginxのプロセスの状態を返します子プロセスの異常終了とrespanwnされた数を返します。
可能な応答:
-
DELETE
- nginxのプロセスの統計をリセットします異常終了およびrespawnされた子プロセスのカウンタをリセットします。
可能な応答:
-
-
/connections
-
サポートされるメソッド:
-
GET
- クライアントの接続統計を返しますクライアント接続の統計を返します。
リクエストのパラメータ:
fields
(string
、任意)- 接続の統計のどのフィールドが出力されるかを制限します。
可能な応答:
- 200 - 成功。Connectionsを返します
- 404 - バージョン不明 (
UnknownVersion
)。Errorを返します
-
DELETE
- クライアント接続の統計をリセットします受け付けられた、および落とされたクライアントの接続の統計をリセットします。
可能な応答:
-
-
/slabs/
-
サポートされるメソッド:
-
GET
- 全てのスラブのステータスを返しますスラブのアロケータを持つ各共有メモリ領域についてのスラブのステータスを返します。
リクエストのパラメータ:
fields
(string
、任意)-
スラブ領域のどのフィールドが出力されるかを制限します。“
fields
” 値が空の場合、領域名だけが出力されます。
可能な応答:
- 200 - 成功。全てのスラブについての"スラブアロケータを持つ共有メモリ領域" オブジェクトのコレクションを返します
- 404 - バージョン不明 (
UnknownVersion
)。Errorを返します
-
-
/slabs/{slabZoneName}
-
全てのメソッドに共通のパラメータ:
slabZoneName
(string
。必須)- slabアロケータを持つ共有メモリ領域の名前。
サポートされるメソッド:
-
GET
- スラブの状態を返します特定のスラブアロケータを持つ共有メモリ領域について、スラブのステータスを返します。
リクエストのパラメータ:
fields
(string
、任意)- スラブ領域のどのフィールドが出力されるかを制限します。
可能な応答:
- 200 - 成功。スラブアロケータを持つ共有メモリ領域を返します
- 404 - Slab not found (
SlabNotFound
), unknown version (UnknownVersion
)。Errorを返します
-
DELETE
- スラブの統計をリセットします各メモリスロットについて “
reqs
” と “fails
” メトリクスをリセットします。可能な応答:
-
/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リクエストの総数をリセットします。
可能な応答:
-
-
/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ハンドシェイクのカウンタ、セッションの再利用の統計を返します。
可能な応答:
-
/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ゾーン内で受け付けおよび破棄したリクエスト、応答、受信および送信したバイト数の統計を返します。
可能な応答:
-
/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
- キャッシュの統計をリセットします特定のキャッシュ領域のキャッシュ ヒット/ミスの統計をリセットします。
可能な応答:
-
/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ゾーンについての統計をリセットします接続の制限の統計をリセットします。
可能な応答:
-
/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ゾーンについての統計をリセットしますリクエストの制限統計をリセットします。
可能な応答:
-
/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サーバについての統計とキューの統計をリセットします。
可能な応答:
-
/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 failedBodyReadError
), 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 failedBodyReadError
), 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_zoneの
timeout
パラメータを上書きする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 failedBodyReadError
)。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_zoneのtimeout
パラメータを上書きする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 failedBodyReadError
)。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ゾーンを空にします。
可能な応答:
-
/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ハンドシェイクのカウンタ、セッションの再利用の統計を返します。
可能な応答:
-
/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 ゾーンについての統計をリセットします接続の制限の統計をリセットします。
可能な応答:
-
/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サーバについての統計を返します。
可能な応答:
-
/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 failedBodyReadError
)。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 failedBodyReadError
), “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_zoneの
timeout
パラメータを上書きする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 failedBodyReadError
)。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_zoneのtimeout
パラメータを上書きする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 failedBodyReadError
)。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ゾーンを空にします。
可能な応答:
-
/stream/zone_sync/
-
サポートされるメソッド:
-
GET
- ノードの同期状態を返しますクラスタノードの同期状態を返します。
可能な応答:
- 200 - 成功。Stream Zone Sync Nodeを返します
- 404 - バージョン不明 (
UnknownVersion
)。Errorを返します
-
-
/resolvers/
-
サポートされるメソッド:
-
/resolvers/{resolverZoneName}
-
全てのメソッドに共通のパラメータ:
resolverZoneName
(string
。必須)- リゾルバゾーンの名前。
サポートされるメソッド:
-
GET
- リゾルバゾーンの統計を返します特定のリゾルバゾーンに格納されている統計を返します。
リクエストのパラメータ:
fields
(string
、任意)- リゾルバ領域どのフィールドが出力されるかを制限します(requests、responses、あるいは両方)
可能な応答:
-
DELETE
- リゾルバゾーンの統計をリセットします。特定のリゾルバゾーンの統計をリセットします。
可能な応答:
-
/ssl
-
サポートされるメソッド:
-
GET
- SSLの統計を返しますSSL統計を返します。
リクエストのパラメータ:
fields
(string
、任意)- SSL統計のどのフィールドが出力されるかを制限します。
可能な応答:
-
DELETE
- SSL統計をリセットします。SSLハンドシェイクとセッションの再利用のカウンタをリセットします。
可能な応答:
-
応答オブジェクト
-
nginx:
nginxについての一般的な情報:-
version
(string
) - nginxのバージョン。
-
build
(string
) - nginxビルド名。
-
address
(string
) - ステータスのリクエストを受け付けたサーバのアドレス。
-
generation
(integer
) - 設定のreloads の総回数。
-
load_timestamp
(string
) - 最後に設定をリロードした時間のミリ秒の精度のISO 8601形式。
-
timestamp
(string
) - 現在の時間のミリ秒の精度のISO 8601形式。
-
pid
(integer
) - ステータスリクエストを処理したワーカープロセスのID。
-
ppid
(integer
) - ワーカープロセスを開始したマスタープロセスのID。
例:
{ "nginx" : { "version" : "1.21.6", "build" : "nginx-plus-r27", "address" : "206.251.255.64", "generation" : 6, "load_timestamp" : "2022-06-28T11:15:44.467Z", "timestamp" : "2022-06-28T09:26:07.305Z", "pid" : 32212, "ppid" : 32210 } }
-
-
Processes:
-
respawned
(integer
) - 子プロセスが異常終了してrespawnされた総回数。
例:
{ "respawned" : 0 }
-
-
Connections:
受け付けられた、落とされた、アクティブな、そして遊んでいる接続の数。-
accepted
(integer
) - クライアント接続を受けた総数
-
dropped
(integer
) - クライアント接続を取り落とした総数
-
active
(integer
) - 現在のアクティブクライアントの接続数
-
idle
(integer
) - 現在のアイドル状態のクライアントの接続数
例:
{ "accepted" : 4968119, "dropped" : 0, "active" : 5, "idle" : 117 }
-
-
SSL:
-
handshakes
(integer
) - 成功したSSLハンドシェイクの総数。
-
handshakes_failed
(integer
) - 失敗したSSLハンドシェイクの総数。
-
session_reuses
(integer
) - SSLハンドシェイクの間に再利用するセッションの総数。
例:
{ "handshakes" : 79572, "handshakes_failed" : 21025, "session_reuses" : 15762 }
-
-
slabアロケータを持つ共有メモリゾーン:
-
pages
-
フリーおよび使用されているメモリページの数。
-
used
(integer
) - 使用されたメモリページの現在の数。
-
free
(integer
) - フリーなメモリページの現在の数。
-
-
slots
-
メモリスロットについてのステータスデータ (8, 16, 32, 64, 128 など)
"Memory Slot" オブジェクトのコレクション
例:
{ "pages" : { "used" : 1143, "free" : 2928 }, "slots" : { "8" : { "used" : 0, "free" : 0, "reqs" : 0, "fails" : 0 }, "16" : { "used" : 0, "free" : 0, "reqs" : 0, "fails" : 0 }, "32" : { "used" : 0, "free" : 0, "reqs" : 0, "fails" : 0 }, "64" : { "used" : 1, "free" : 63, "reqs" : 1, "fails" : 0 }, "128" : { "used" : 0, "free" : 0, "reqs" : 0, "fails" : 0 }, "256" : { "used" : 18078, "free" : 178, "reqs" : 1635736, "fails" : 0 } } }
-
-
Memory Slot:
-
used
(integer
) - 使用されたメモリスロットの現在の数。
-
free
(integer
) - フリーなメモリスロットの現在の数。
-
reqs
(integer
) - 指定されたサイズのメモリを割り当てようとした総回数。
-
fails
(integer
) - 指定されたサイズのメモリを割り当てようとして失敗した数。
-
-
HTTP Requests:
-
total
(integer
) - クライアントリクエストの総数
-
current
(integer
) - 現在のクライアントリクエストの数
例:
{ "total" : 10624511, "current" : 4 }
-
-
HTTP Server Zone:
-
processing
(integer
) - 現在処理されているクライアントリクエストの数
-
requests
(integer
) - クライアントから受け付けたクライアントリクエストの総数
-
responses
-
クライアントに送信された応答の総数、ステータスコード “
1xx
”, “2xx
”, “3xx
”, “4xx
” および “5xx
” を持つ応答の数、各ステータスコードごとの応答の数。-
1xx
(integer
) -
“
1xx
” ステータスコードの応答の数。 -
2xx
(integer
) -
“
2xx
” ステータスコードの応答の数。 -
3xx
(integer
) -
“
3xx
” ステータスコードの応答の数。 -
4xx
(integer
) -
“
4xx
” ステータスコードの応答の数。 -
5xx
(integer
) -
“
5xx
” ステータスコードの応答の数。 -
codes
-
各ステータスコードごとの応答の数。
-
codeNumber
(integer
) - この特定のステータスコードの応答の数。
-
-
total
(integer
) - クライアントに送信した応答の総数
-
-
discarded
(integer
) - 応答を送信せずに完了したリクエストの総数。
-
received
(integer
) - クライアントから受け取った総バイト数
-
sent
(integer
) - クライアントに送信した総バイト数
-
ssl
-
-
handshakes
(integer
) - 成功したSSLハンドシェイクの総数。
-
handshakes_failed
(integer
) - 失敗したSSLハンドシェイクの総数。
-
session_reuses
(integer
) - SSLハンドシェイクの間に再利用するセッションの総数。
-
例:
{ "processing" : 1, "requests" : 706690, "responses" : { "1xx" : 0, "2xx" : 699482, "3xx" : 4522, "4xx" : 907, "5xx" : 266, "codes" : { "200" : 699482, "301" : 4522, "404" : 907, "503" : 266 }, "total" : 705177 }, "discarded" : 1513, "received" : 172711587, "sent" : 19415530115, "ssl" : { "handshakes" : 104303, "handshakes_failed" : 1421, "session_reuses" : 54645 } }
-
-
HTTP Location Zone:
-
requests
(integer
) - クライアントから受け付けたクライアントリクエストの総数
-
responses
-
クライアントに送信された応答の総数、ステータスコード “
1xx
”, “2xx
”, “3xx
”, “4xx
” および “5xx
” を持つ応答の数、各ステータスコードごとの応答の数。-
1xx
(integer
) -
“
1xx
” ステータスコードの応答の数。 -
2xx
(integer
) -
“
2xx
” ステータスコードの応答の数。 -
3xx
(integer
) -
“
3xx
” ステータスコードの応答の数。 -
4xx
(integer
) -
“
4xx
” ステータスコードの応答の数。 -
5xx
(integer
) -
“
5xx
” ステータスコードの応答の数。 -
codes
-
各ステータスコードごとの応答の数。
-
codeNumber
(integer
) - この特定のステータスコードの応答の数。
-
-
total
(integer
) - クライアントに送信した応答の総数
-
-
discarded
(integer
) - 応答を送信せずに完了したリクエストの総数。
-
received
(integer
) - クライアントから受け取った総バイト数
-
sent
(integer
) - クライアントに送信した総バイト数
例:
{ "requests" : 706690, "responses" : { "1xx" : 0, "2xx" : 699482, "3xx" : 4522, "4xx" : 907, "5xx" : 266, "codes" : { "200" : 112674, "301" : 4522, "404" : 2504, "503" : 266 }, "total" : 705177 }, "discarded" : 1513, "received" : 172711587, "sent" : 19415530115 }
-
-
HTTP Cache:
-
size
(integer
) - 現在のキャッシュのサイズ
-
max_size
(integer
) - 設定で指定されたキャッシュの最大サイズの上限
-
cold
(boolean
) - "cache loader"プロセスがディスクからキャッシュにまだデータをロードしているかどうかを示す真偽値
-
hit
-
-
responses
(integer
) - キャッシュから読み込まれたvalid 応答の総数。
-
bytes
(integer
) - キャッシュから読み込んだ総バイト数
-
-
stale
-
-
responses
(integer
) -
キャッシュから読み込まれた期限切れの応答の総数 (proxy_cache_use_stale と他の “
*_cache_use_stale
” ディレクティブを見てください)。 -
bytes
(integer
) - キャッシュから読み込んだ総バイト数
-
-
updating
-
-
responses
(integer
) -
応答が更新されていた間にキャッシュから読み込まれた期限切れの応答の総数 (proxy_cache_use_stale と他の “
*_cache_use_stale
” ディレクティブを見てください)。 -
bytes
(integer
) - キャッシュから読み込んだ総バイト数
-
-
revalidated
-
-
responses
(integer
) -
キャッシュから読み込まれた期限切れおよび再有効化された応答の総数 (proxy_cache_revalidate と他の “
*_cache_revalidate
” ディレクティブを見てください)。 -
bytes
(integer
) - キャッシュから読み込んだ総バイト数
-
-
miss
-
-
responses
(integer
) - キャッシュで見つからなかった総応答数。
-
bytes
(integer
) - プロキシされたサーバから読み込んだ総バイト数
-
responses_written
(integer
) - キャッシュに書き込まれた総応答数
-
bytes_written
(integer
) - キャッシュに書き込まれた総バイト数
-
-
expired
-
-
responses
(integer
) - キャッシュから取り出されなかった期限切れの応答の総数。
-
bytes
(integer
) - プロキシされたサーバから読み込んだ総バイト数
-
responses_written
(integer
) - キャッシュに書き込まれた総応答数
-
bytes_written
(integer
) - キャッシュに書き込まれた総バイト数
-
-
bypass
-
-
responses
(integer
) -
proxy_cache_bypass および他の “
*_cache_bypass
” ディレクティブによりキャッシュ内で探されなかった応答の総数。 -
bytes
(integer
) - プロキシされたサーバから読み込んだ総バイト数
-
responses_written
(integer
) - キャッシュに書き込まれた総応答数
-
bytes_written
(integer
) - キャッシュに書き込まれた総バイト数
-
例:
{ "size" : 530915328, "max_size" : 536870912, "cold" : false, "hit" : { "responses" : 254032, "bytes" : 6685627875 }, "stale" : { "responses" : 0, "bytes" : 0 }, "updating" : { "responses" : 0, "bytes" : 0 }, "revalidated" : { "responses" : 0, "bytes" : 0 }, "miss" : { "responses" : 1619201, "bytes" : 53841943822 }, "expired" : { "responses" : 45859, "bytes" : 1656847080, "responses_written" : 44992, "bytes_written" : 1641825173 }, "bypass" : { "responses" : 200187, "bytes" : 5510647548, "responses_written" : 200173, "bytes_written" : 44992 } }
-
-
HTTP 接続の制限:
-
passed
(integer
) - 制限されても、制限されていると見なされてもいない、接続の総数。
-
rejected
(integer
) - 拒否された接続の総数。
-
rejected_dry_run
(integer
) - ドライランモードで拒否されたと見なされた接続の総数。
例:
{ "passed" : 15, "rejected" : 0, "rejected_dry_run" : 2 }
-
-
HTTP リクエストレートの制限:
-
passed
(integer
) - 制限されても、制限されているとも見なされてもいない、接続の総数。
-
delayed
(integer
) - 遅延されたリクエストの総数。
-
rejected
(integer
) - 拒否されたリクエストの総数。
-
delayed_dry_run
(integer
) - ドライランモードで遅延されたと見なされるリクエストの総数。
-
rejected_dry_run
(integer
) - ドライランモードで拒否されたと見なされたリクエストの総数。
例:
{ "passed" : 15, "delayed" : 4, "rejected" : 0, "delayed_dry_run" : 1, "rejected_dry_run" : 2 }
-
-
HTTP Upstream:
-
peers
-
配列:
-
id
(integer
) - サーバのID。
-
server
(string
) - サーバのアドレス。
-
service
(string
) - serverディレクティブの service パラメータ値。
-
name
(string
) - server ディレクティブで指定されたサーバの名前。
-
backup
(boolean
) - サーバが バックアップ サーバかどうかを示す真偽値
-
weight
(integer
) - サーバの重み付け。
-
state
(string
) -
現在の状態。“
up
”, “draining
”, “down
”, “unavail
”, “checking
” および “unhealthy
” のうちの1つでしょう。 -
active
(integer
) - 現在のアクティブな接続の数
-
ssl
-
-
handshakes
(integer
) - 成功したSSLハンドシェイクの総数。
-
handshakes_failed
(integer
) - 失敗したSSLハンドシェイクの総数。
-
session_reuses
(integer
) - SSLハンドシェイクの間に再利用するセッションの総数。
-
-
max_conns
(integer
) - サーバの max_conns 制限。
-
requests
(integer
) - このサーバにフォワードされているクライアントリクエストの総数
-
responses
-
-
1xx
(integer
) -
“
1xx
” ステータスコードの応答の数。 -
2xx
(integer
) -
“
2xx
” ステータスコードの応答の数。 -
3xx
(integer
) -
“
3xx
” ステータスコードの応答の数。 -
4xx
(integer
) -
“
4xx
” ステータスコードの応答の数。 -
5xx
(integer
) -
“
5xx
” ステータスコードの応答の数。 -
codes
-
各ステータスコードごとの応答の数。
-
codeNumber
(integer
) - この特定のステータスコードの応答の数。
-
-
total
(integer
) - このサーバから取得された応答の総数
-
-
sent
(integer
) - このサーバに送信された総バイト数
-
received
(integer
) - このサーバから受け取った総バイト数
-
fails
(integer
) - サーバと通信に失敗した総数
-
unavail
(integer
) -
失敗の試行数がmax_failsの閾値に達したためにサーバがクライアントのリクエストに使えなくなった(state "
unavail
")回数 -
health_checks
-
-
checks
(integer
) - health check リクエストの総数
-
fails
(integer
) - health checkに失敗した数
-
unhealthy
(integer
) -
何回サーバがunhealthy(state "
unhealthy
")になったか -
last_passed
(boolean
) - 最後のhealth checkリクエストが成功してtestsに通ったかの真偽値
-
-
downtime
(integer
) -
サーバが “
unavail
”, “checking
” および “unhealthy
” の状態であった総時間。 -
downstart
(string
) -
サーバが “
unavail
”、“checking
”、“unhealthy
”になった時間のミリ秒の精度のISO 8601形式。 -
selected
(string
) - サーバが最後にリクエストを処理するために選択された時間のミリ秒の精度のISO 8601形式。
-
header_time
(integer
) - サーバから 応答ヘッダ を受け取った平均タイム。
-
response_time
(integer
) - サーバから full response を受け取った平均タイム。
-
-
keepalive
(integer
) - 現在のアイドル状態のkeepalive 接続の数
-
zombies
(integer
) - グループから削除されたが、まだアクティブなクライアントリクエストを処理しているサーバの現在の数。
-
zone
(string
) - グループの設定と実行状態を保持する共有メモリzoneの名前。
-
キュー
-
リクエストキューについて、以下のデータが提供されます:
-
size
(integer
) - キュー内のリクエストの現在の数。
-
max_size
(integer
) - 同時にキューの中に存在できるリクエストの最大数。
-
overflows
(integer
) - キューのオーバーフローによって拒否されたリクエストの総数。
-
例:
{ "upstream_backend" : { "peers" : [ { "id" : 0, "server" : "10.0.0.1:8088", "name" : "10.0.0.1:8088", "backup" : false, "weight" : 5, "state" : "up", "active" : 0, "ssl" : { "handshakes" : 620311, "handshakes_failed" : 3432, "session_reuses" : 36442 }, "max_conns" : 20, "requests" : 667231, "header_time" : 20, "response_time" : 36, "responses" : { "1xx" : 0, "2xx" : 666310, "3xx" : 0, "4xx" : 915, "5xx" : 6, "codes" : { "200" : 666310, "404" : 915, "503" : 6 }, "total" : 667231 }, "sent" : 251946292, "received" : 19222475454, "fails" : 0, "unavail" : 0, "health_checks" : { "checks" : 26214, "fails" : 0, "unhealthy" : 0, "last_passed" : true }, "downtime" : 0, "downstart" : "2022-06-28T11:09:21.602Z", "selected" : "2022-06-28T15:01:25.000Z" }, { "id" : 1, "server" : "10.0.0.1:8089", "name" : "10.0.0.1:8089", "backup" : true, "weight" : 1, "state" : "unhealthy", "active" : 0, "max_conns" : 20, "requests" : 0, "responses" : { "1xx" : 0, "2xx" : 0, "3xx" : 0, "4xx" : 0, "5xx" : 0, "codes" : { }, "total" : 0 }, "sent" : 0, "received" : 0, "fails" : 0, "unavail" : 0, "health_checks" : { "checks" : 26284, "fails" : 26284, "unhealthy" : 1, "last_passed" : false }, "downtime" : 262925617, "downstart" : "2022-06-28T11:09:21.602Z", "selected" : "2022-06-28T15:01:25.000Z" } ], "keepalive" : 0, "zombies" : 0, "zone" : "upstream_backend" } }
-
-
HTTP Upstream Server:
HTTP upstream serverの動的に設定可能なパラメータ:-
id
(integer
) - HTTP upstreamサーバのID。IDは自動的に割り当てられ、変更することはできません。
-
server
(string
) -
HTTP upstreamサーバの address パラメータと同じ。サーバを追加する時には、ドメイン名としてそれを指定することができます。この場合、ドメイン名に対応するIPアドレスの変更は監視され、nginxの再起動の必要無しにupstreamの設定に自動的に適用されるでしょう。これには“
http
”ブロック内のresolverディレクティブが必要です。HTTP upstreamサーバのresolve パラメータも見てください。 -
service
(string
) - HTTP upstreamサーバの service パラメータと同じ。このパラメータは変更することができません。
-
weight
(integer
) - HTTP upstreamサーバの weight パラメータと同じ。
-
max_conns
(integer
) - HTTP upstreamサーバの max_conns パラメータと同じ。
-
max_fails
(integer
) - HTTP upstreamサーバの max_fails パラメータと同じ。
-
fail_timeout
(string
) - HTTP upstreamサーバの fail_timeout パラメータと同じ。
-
slow_start
(string
) - HTTP upstreamサーバの slow_start パラメータと同じ。
-
route
(string
) - HTTP upstreamサーバの"route"パラメータと同じです。
-
backup
(boolean
) -
true
の場合、backupサーバを追加します。このパラメータは変更することができません。 -
down
(boolean
) - HTTP upstreamサーバの down パラメータと同じ。
-
drain
(boolean
) - HTTP upstreamサーバの drain パラメータと同じ。
-
parent
(string
) - 解決されたサーバの親サーバID。IDは自動的に割り当てられ、変更することはできません。
-
host
(string
) - 解決されたサーバのホスト名。ホスト名は自動的に割り当てられ、変更する事はできません。
例:
{ "id" : 1, "server" : "10.0.0.1:8089", "weight" : 4, "max_conns" : 0, "max_fails" : 0, "fail_timeout" : "10s", "slow_start" : "10s", "route" : "", "backup" : true, "down" : true }
-
-
HTTP Keyval 共有メモリゾーン:
GETメソッドを使う場合のHTTP keyval共有メモリ領域の内容。例:
{ "key1" : "value1", "key2" : "value2", "key3" : "value3" }
-
HTTP Keyval 共有メモリゾーン:
POSTまたはPATCHメソッドを使う場合のHTTP keyval共有メモリ領域の内容。例:
{ "key1" : "value1", "key2" : "value2", "key3" : { "value" : "value3", "expire" : 30000 } }
-
Stream サーバゾーン:
-
processing
(integer
) - 現在処理されているクライアント接続の数。
-
connections
(integer
) - クライアントに受け入れられた接続の総数。
-
sessions
-
完了したセッションの総数と、ステータスコード “
2xx
”, “4xx
” あるいは “5xx
” を持つ完了したセッションの数。-
2xx
(integer
) -
status codes “
2xx
” を持つ完了したセッションの総数。 -
4xx
(integer
) -
status codes “
4xx
” を持つ完了したセッションの総数。 -
5xx
(integer
) -
status codes “
5xx
” を持つ完了したセッションの総数。 -
total
(integer
) - 完了したクライアントセッションの総数。
-
-
discarded
(integer
) - セッションを生成せずに完了した接続の総数。
-
received
(integer
) - クライアントから受け取った総バイト数
-
sent
(integer
) - クライアントに送信した総バイト数
-
ssl
-
-
handshakes
(integer
) - 成功したSSLハンドシェイクの総数。
-
handshakes_failed
(integer
) - 失敗したSSLハンドシェイクの総数。
-
session_reuses
(integer
) - SSLハンドシェイクの間に再利用するセッションの総数。
-
例:
{ "dns" : { "processing" : 1, "connections" : 155569, "sessions" : { "2xx" : 155564, "4xx" : 0, "5xx" : 0, "total" : 155569 }, "discarded" : 0, "received" : 4200363, "sent" : 20489184, "ssl" : { "handshakes" : 76455, "handshakes_failed" : 432, "session_reuses" : 28770 } } }
-
-
Stream 接続制限:
-
passed
(integer
) - 制限されても、制限されていると見なされてもいない、接続の総数。
-
rejected
(integer
) - 拒否された接続の総数。
-
rejected_dry_run
(integer
) - ドライランモードで拒否されたと見なされた接続の総数。
例:
{ "passed" : 15, "rejected" : 0, "rejected_dry_run" : 2 }
-
-
Stream Upstream:
-
peers
-
配列:
-
id
(integer
) - サーバのID。
-
server
(string
) - サーバのアドレス。
-
service
(string
) - serverディレクティブの service パラメータ値。
-
name
(string
) - server ディレクティブで指定されたサーバの名前。
-
backup
(boolean
) - サーバが バックアップ サーバかどうかを示す真偽値
-
weight
(integer
) - サーバの重み付け。
-
state
(string
) -
現在のステータス。“
up
”, “down
”, “unavail
”, “checking
” あるいは “unhealthy
” のいずれかでしょう。 -
active
(integer
) - 現在の接続の数。
-
ssl
-
-
handshakes
(integer
) - 成功したSSLハンドシェイクの総数。
-
handshakes_failed
(integer
) - 失敗したSSLハンドシェイクの総数。
-
session_reuses
(integer
) - SSLハンドシェイクの間に再利用するセッションの総数。
-
-
max_conns
(integer
) - サーバの max_conns 制限。
-
connections
(integer
) - このサーバに転送されたクライアント接続の総数。
-
connect_time
(integer
) - upstreamサーバへの接続の平均タイム。
-
first_byte_time
(integer
) - データの最初のバイトを受け取るまでの平均タイム。
-
response_time
(integer
) - データの最後のバイトを受け取るまでの平均タイム。
-
sent
(integer
) - このサーバに送信された総バイト数
-
received
(integer
) - このサーバから受け取った総バイト数
-
fails
(integer
) - サーバと通信に失敗した総数
-
unavail
(integer
) -
クライアント接続の失敗がmax_fails閾値に達することにより、サーバが利用不可能(state “
unavail
”) になった回数。 -
health_checks
-
-
checks
(integer
) - health check リクエストの総数
-
fails
(integer
) - health checkに失敗した数
-
unhealthy
(integer
) -
何回サーバがunhealthy(state "
unhealthy
")になったか -
last_passed
(boolean
) - 最後のhealth checkリクエストが成功してtestsに通ったかどうかを示す真偽値。
-
-
downtime
(integer
) -
サーバが “
unavail
”, “checking
” および “unhealthy
” の状態であった総時間。 -
downstart
(string
) -
サーバが “
unavail
”、“checking
”、“unhealthy
”になった時間のミリ秒の精度のISO 8601形式。 -
selected
(string
) - サーバが最後に接続を処理するために選択された時間のミリ秒の精度のISO 8601形式。
-
-
zombies
(integer
) - グループから削除されたが、まだアクティブなクライアント接続を処理しているサーバの現在の数。
-
zone
(string
) - グループの設定と実行状態を保持する共有メモリzoneの名前。
例:
{ "dns" : { "peers" : [ { "id" : 0, "server" : "10.0.0.1:12347", "name" : "10.0.0.1:12347", "backup" : false, "weight" : 5, "state" : "up", "active" : 0, "ssl" : { "handshakes" : 200, "handshakes_failed" : 4, "session_reuses" : 189 }, "max_conns" : 50, "connections" : 667231, "sent" : 251946292, "received" : 19222475454, "fails" : 0, "unavail" : 0, "health_checks" : { "checks" : 26214, "fails" : 0, "unhealthy" : 0, "last_passed" : true }, "downtime" : 0, "downstart" : "2022-06-28T11:09:21.602Z", "selected" : "2022-06-28T15:01:25.000Z" }, { "id" : 1, "server" : "10.0.0.1:12348", "name" : "10.0.0.1:12348", "backup" : true, "weight" : 1, "state" : "unhealthy", "active" : 0, "max_conns" : 50, "connections" : 0, "sent" : 0, "received" : 0, "fails" : 0, "unavail" : 0, "health_checks" : { "checks" : 26284, "fails" : 26284, "unhealthy" : 1, "last_passed" : false }, "downtime" : 262925617, "downstart" : "2022-06-28T11:09:21.602Z", "selected" : "2022-06-28T15:01:25.000Z" } ], "zombies" : 0, "zone" : "dns" } }
-
-
Stream Upstream Server:
ストリーム upstream serverの動的に設定可能なパラメータ:-
id
(integer
) - ストリーム upstreamサーバのID。IDは自動的に割り当てられ、変更することはできません。
-
server
(string
) -
ストリーム upstreamサーバの address パラメータと同じ。サーバを追加する時には、ドメイン名としてそれを指定することができます。この場合、ドメイン名に対応するIPアドレスの変更は監視され、nginxの再起動の必要無しにupstreamの設定に自動的に適用されるでしょう。これには“
stream
”ブロック内のresolverディレクティブが必要です。ストリーム upstreamサーバのresolve パラメータも見てください。 -
service
(string
) - ストリーム upstreamサーバの service パラメータと同じ。このパラメータは変更することができません。
-
weight
(integer
) - ストリーム upstreamサーバの weight パラメータと同じ。
-
max_conns
(integer
) - ストリーム upstreamサーバの max_conns パラメータと同じ。
-
max_fails
(integer
) - ストリーム upstreamサーバの max_fails パラメータと同じ。
-
fail_timeout
(string
) - ストリーム upstreamサーバの fail_timeout パラメータと同じ。
-
slow_start
(string
) - ストリーム upstreamサーバの slow_start パラメータと同じ。
-
backup
(boolean
) -
true
の場合、backupサーバを追加します。このパラメータは変更することができません。 -
down
(boolean
) - ストリーム upstreamサーバの down パラメータと同じ。
-
parent
(string
) - 解決されたサーバの親サーバID。IDは自動的に割り当てられ、変更することはできません。
-
host
(string
) - 解決されたサーバのホスト名。ホスト名は自動的に割り当てられ、変更する事はできません。
例:
{ "id" : 0, "server" : "10.0.0.1:12348", "weight" : 1, "max_conns" : 0, "max_fails" : 1, "fail_timeout" : "10s", "slow_start" : 0, "backup" : false, "down" : false }
-
-
Stream Keyval 共有メモリゾーン:
GETメソッドを使う場合のストリーム keyval共有メモリ領域の内容。例:
{ "key1" : "value1", "key2" : "value2", "key3" : "value3" }
-
Stream Keyval 共有メモリゾーン:
POSTまたはPATCHメソッドを使う場合のストリーム keyval共有メモリ領域の内容。例:
{ "key1" : "value1", "key2" : "value2", "key3" : { "value" : "value3", "expire" : 30000 } }
-
Stream ゾーン同期ノード:
-
zones
-
各共有メモリ領域ごとの同期情報。
"Sync Zone" オブジェクトのコレクション
-
状態
-
クラスタ内のノードごとの同期情報。
-
bytes_in
(integer
) - このノードによって受信されたバイト数。
-
msgs_in
(integer
) - このノードによって受信されたメッセージ数。
-
msgs_out
(integer
) - このノードによって送信されたメッセージ数。
-
bytes_out
(integer
) - このノードによって送信されたバイト数。
-
nodes_online
(integer
) - このノードが接続しているpeerの数。
-
例:
{ "zones" : { "zone1" : { "records_pending" : 2061, "records_total" : 260575 }, "zone2" : { "records_pending" : 0, "records_total" : 14749 } }, "status" : { "bytes_in" : 1364923761, "msgs_in" : 337236, "msgs_out" : 346717, "bytes_out" : 1402765472, "nodes_online" : 15 } }
-
-
Sync Zone:
共有メモリ領域の同期状態。-
records_pending
(integer
) - クラスタに送信される必要があるレコードの数。
-
records_total
(integer
) - 共有メモリ領域に格納されているレコードの総数。
-
-
リゾルバゾーン:
特定のリゾルバゾーンごとのDNSリクエストと応答の統計。-
requests
-
-
name
(integer
) - アドレスの名前を解決するためのリクエストの総数。
-
srv
(integer
) - SRVレコードを解決するためのリクエストの総数。
-
addr
(integer
) - アドレスを名前に解決するためのリクエストの総数。
-
-
responses
-
-
noerror
(integer
) - 正常な応答の総数。
-
formerr
(integer
) -
FORMERR (
Format error
) 応答の総数。 -
servfail
(integer
) -
SERVFAIL (
Server failure
) 応答の総数。 -
nxdomain
(integer
) -
NXDOMAIN (
Host not found
) 応答の総数。 -
notimp
(integer
) -
NOTIMP (
Unimplemented
) 応答の総数。 -
refused
(integer
) -
REFUSED (
Operation refused
) 応答の総数。 -
timedout
(integer
) - タイムアウトリクエストの総数。
-
unknown
(integer
) - 未知のエラーで完了したリクエストの総数。
-
例:
{ "resolver_zone1" : { "requests" : { "name" : 25460, "srv" : 130, "addr" : 2580 }, "responses" : { "noerror" : 26499, "formerr" : 0, "servfail" : 3, "nxdomain" : 0, "notimp" : 0, "refused" : 0, "timedout" : 243, "unknown" : 478 } } }
-
-
エラー:
nginxのエラーオブジェクト-
エラー
-
-
status
(integer
) - HTTP エラーコード
-
text
(string
) - エラーの説明。
-
code
(string
) - 内部的な nginx エラーコード。
-
-
request_id
(string
) - リクエストのID。$request_id 変数の値と同じ。
-
href
(string
) - リファレンス ドキュメントへのリンク。
-