今まさにNGINX Plusサーバで何が起こっているのかを知る必要性はありませんでしたか? たとえば、DDoS攻撃が疑われるときや、ユーザがWebサイトからエラーを報告してるかの確認などです。NGINX Plusには、主要な負荷とパフォーマンスの指標をリアルタイムに提供するアクティビティ モニタリング インターフェイスが組み込まれています。シンプルなRESTful JSONインターフェイスを使用することにより、これらの統計データをライブ ダッシュボードやサードパーティ製モニタリング ツールに簡単に接続できます。

ライブ アクティビティ モニタリングのデータは、NGINX Plus APIによって生成されます。ライブ アクティビティのモニタリングは次のようにして構成できます。
server {
listen 8080;
location /api {
api write=on;
# directives limiting access to the API
}
location = /dashboard.html {
root /usr/share/nginx/html;
}
# Redirect requests made to the pre-NGINX Plus API dashboard
location = /status.html {
return 301 /dashboard.html;
}
}
APIを使用してアップストリーム グループを再構成したり、収集された統計のセットをクリアしたりするには、write=on
パラメータが必要です。ステータス情報を取得する必要はありません。
/apiの場所へのアクセスを制限することが推奨されます。NGINX Plus Admin Guideに、適切なセキュリティ スキームについて詳しく説明されています。
詳細 – ライブ アクティビティ モニタリングのJSONフィード
APIにアクセスすると、現在の統計データを含むJSON形式のドキュメントがNGINX Plusから返されます。/api/api-version/から完全な統計データをリクエストできます(api-versionはNGINX Plus APIのバージョン番号)。次のように、特定のAPIエンドポイントでドリルダウンしてデータのサブセットや単一のデータポイントを取得することもできます。
- /api/api-version/nginx/ – 基本バージョン、稼働時間、識別情報
- /api/api-version/connections/ – アクティブな接続とアイドル状態の接続の合計
- /api/api-version/http/caches/ – 名前付きキャッシュゾーンごとのインストルメンテーション
- /api/api-version/http/server_zones/ – HTTP ステータスゾーンごとのリクエスト数とレスポンス数
- /api/api-version/http/upstreams/ – 各HTTPアップストリーム グループのサーバごとのリクエスト数とレスポンス数、応答時間、ヘルスチェックのステータス、稼働時間の統計データ
- /api/api-version/limit_conns/ – 通過した接続、拒否した接続、遅延した接続の数を示すレート制限統計データ
- /api/api-version/limit_reqs/ – 通過したリクエスト、拒否したリクエスト、遅延したリクエストの数を示すレート制限統計データ
- /api/api-version/stream/upstreams/ – 各TCP/UDPアップストリーム グループのサーバごとのリクエスト数とレスポンス数、応答時間、ヘルスチェックスのテータス、稼働時間の統計データ
- /api/api-version/ssl/ – SSL/TLSの統計データ
すべてのエンドポイントの一覧については、リファレンス マニュアルまたはSwagger UI(demo.nginx.com)をご覧ください。
外部モニタリング
任意の外部モニタリング ツールにNGINX Plusの指標をエクスポートすることもできます。NGINX Plusは、以下のような一般的なサードパーティ ツールやNGINXツールと統合できます。