ブログ | NGINX

NGINXの監視

NGINX-F5 水平黒タイプ RGB の一部
F5 NGINX サムネイル
F5 の
2018年1月8日公開

NGINX の監視ツールを設定することは、Web サイトの運用を維持する上で重要な部分です。 適切な NGINX モニタリングにより、基盤となるアプリケーションのパフォーマンスに関する多くの有用な情報が明らかになります。 このタスクに適した監視システムは数多くありますが、最初のステップは、NGINX でメトリック収集を有効にすることです。

stub_statusモジュールの使用

NGINX オープンソースには、 ngx_http_stub_status_module (または単にstub_status ) と呼ばれるモジュールがあり、NGINX アクティビティに関するいくつかの重要なメトリックを公開します。

NGINX ビルドにstub_statusモジュールが含まれているかどうかを確認するには、 nginx -Vを実行します。

$ nginx -V 2>&1 | grep --color -- --with-http_stub_status_module

すべてのNGINX ビルドには、サポートされているすべてのプラットフォーム上のstub_statusモジュールが含まれています。

NGINX ビルドにstub_statusモジュールが含まれていない場合は、ソースから再構築し、 configureスクリプトに--with-http_stub_status_moduleパラメータを含める必要があります。

次のステップとして、 locationブロックにstub_statusディレクティブを含めて、NGINX 構成でモジュールを有効にします。 既存のサーバー構成にブロックをいつでも追加できます。 または、次のように、 stub_statusディレクティブ専用の場所を 1 つ持つ別のサーバーブロックを追加します。

サーバー {
listen 127.0.0.1:80;
server_name 127.0.0.1;

location /nginx_status {
stub_status;
}
}

stub_statusディレクティブの適切なサーバーブロックは、メイン構成ファイル ( nginx.conf ) の外部にある場合があります。 そのファイルに適切なブロックが見つからない場合は、通常nginx.conf含まれている追加の構成ファイルを検索します。

また、 location ブロックまたはserverブロックにallowおよびdenyディレクティブを含めるなどして、承認されたユーザーのみがメトリックにアクセスできるようにすることをお勧めします。

stub_statusモジュールが設定された後、NGINX 設定をリロードすることを忘れないでください (たとえば、 service nginx reloadコマンドを使用)。 NGINX 制御信号の詳細については、こちらをご覧ください。

stub_statusメトリックを表示するには、 curlクエリを作成します。 上記の構成には以下が適切です。

$ curl http://127.0.0.1/nginx_statusアクティブな接続: 2 サーバーが処理されたリクエストを受け入れます 841845 841845 1631067 読み取り: 0 執筆: 1 待機中: 1

これが機能しない場合は、 /nginx_statusへのリクエストがどこにルーティングされるかを確認してください。 多くの場合、 stub_statusメトリックにアクセスできない理由は、別のサーバーブロックである可能性があります。 インスタンス全体の NGINX メトリクスの詳細については、リファレンス ドキュメントを参照してください。

NGINX でstub_statusモジュールが有効になって動作したら、選択した監視システムのインストールと構成に進むことができます。

ログファイルと syslog

NGINXアクセス ログエラー ログには、メトリック収集に適した多くの有用な情報が含まれています。 NGINX変数を使用して、アクセス ログの形式を完全にカスタマイズできます。 特定の監視ツールでは、メトリック収集に NGINX ログ ファイルを活用できます。

さまざまなパフォーマンスとセキュリティの要件を満たすには、NGINX syslog機能の使用を検討してください。 ログ ファイルはディスクに書き込まれますが、syslog により NGINX はネットワーク プロトコル経由でログ データを送信できます。 たとえば、さまざまな NGINX インスタンスからすべてのログ データを収集するための専用の Linux システムをセットアップできます。

ログの詳細については、 NGINX Plus 管理者ガイドを参照してください。

Amplify による NGINX の監視

NGINX 監視用のネイティブ ツールがあります。 これはNGINX Amplifyと呼ばれ、最大 5 台のサーバーを無料で監視できる SaaS ツールです (より多くのサーバーにはサブスクリプションが利用可能です)。

NGINX Amplify を使い始めるのは簡単です。 10 分以内に、すべての主要な NGINX メトリックのすぐに使用できるグラフを取得できます。 NGINX Amplify は、 stub_statusとアクセス ログからのメトリクスを自動的に使用し、さまざまな OS 情報も収集できます。

NGINX Amplify を使用すると、NGINX のパフォーマンスを視覚化し、OS、PHP-FPM、Docker コンテナなどを監視できます。 Amplify のユニークな機能は、NGINX 構成の静的アナライザーであり、構成をより安全かつ効率的にするための推奨事項を提供します。

NGINX Amplify の詳細については、こちらをご覧になり、無料でお試しください。

NGINXを監視するためのAmplify画面
NGINX Amplifyは重要な監視ツールです

NGINX Plusの追加APIモジュール

NGINX Plus は、専用の API モジュールを介してパフォーマンス メトリックを取得するより優れた方法を提供します。

API モジュールは、主に負荷分散と仮想サーバーの統計に重点を置いた詳細なメトリック セットを提供します。 例として、すべてのHTTPステータスコードの内訳(1xx2xx3xx4xx5xx)は、 サーバ ブロック。 ヘルス ステータス情報は、 HTTPおよびTCP/UDPアップストリーム サーバーの両方で利用できます。 キャッシュメトリックには、各キャッシュ ゾーンのヒットとミスが含まれます。

拡張されたメトリックセットを収集する以外に、API を使用すると、設定を再ロードしたり NGINX Plus を再起動したりせずに、 HTTPおよびTCP/UDPアップストリーム サーバー グループを再構成し、キー値変数を管理することもできます。

NGINX Plus には、追加のメトリックを利用する統合ダッシュボードも付属しています。 追加のメトリクスは、NGINX Amplify でも使用できます。

その他の監視ソリューション

他の多くの監視製品でも、NGINX メトリックを収集して表示できます。 以下のリンクでは、最も一般的な統合シナリオについて説明しています。


「このブログ投稿には、入手できなくなった製品やサポートされなくなった製品が参照されている場合があります。 利用可能な F5 NGINX 製品およびソリューションに関する最新情報については、 NGINX 製品ファミリーをご覧ください。 NGINX は現在 F5 の一部です。 以前の NGINX.com リンクはすべて、F5.com の同様の NGINX コンテンツにリダイレクトされます。"