Skip to content

メトリックプラグイン - mackerel-plugin-nginx

mackerel-plugin-nginxは、nginxのstub_statusを元にnginxの状態を可視化するプラグインです。

監視できるメトリック

Nginx Connections

メトリック表示名メトリック名差分積み上げ表示説明
Active connectionscustom.nginx.connections.connections--Waiting 状態を含むクライアントからの現在の接続数

Nginx requests

メトリック表示名メトリック名差分積み上げ表示説明
Accepted connectionscustom.nginx.requests.accepts-受け付けたクライアント接続の総数
Handled connectionscustom.nginx.requests.handled-処理したクライアント接続の総数
Handled requestscustom.nginx.requests.requests-クライアントからのリクエストの総数

Nginx connection status

メトリック表示名メトリック名差分積み上げ表示説明
Readingcustom.nginx.queue.reading--リクエストヘッダを読んでいる現在の接続数
Writingcustom.nginx.queue.writing--クライアントにレスポンスを書き戻している現在の接続数
Waitingcustom.nginx.queue.waiting--リクエストを待っているアイドルクライアントコネクションの現在の数

指定可能なオプション

プラグインに指定可能なオプションは以下の通りです。

オプション環境変数説明初期値
-uri接続先のURI
-scheme接続する際のHTTPスキーム(http か https)http
-host接続先のホスト名localhost
-port接続先のポート番号8080
-pathstab_status が提供されているパス/nginx_status
-tempfile一時ファイルの保存先パス
-header接続時に付与する追加のヘッダー (2つ以上指定する場合はそれぞれに -header が必要)

エージェントへの設定例

ローカルホスト上で、8081番ポートで /stub_status として stub_status を提供している nginx を監視するには次のように設定します。

toml
[plugin.metrics.nginx]
command = ["/path/to/mackerel-plugin-nginx","--port","8081","--path","/stab_status"]

上記設定の場合、次のように実行して動作確認できます。

mackerel-plugin-nginx --port 8081 --path /stab_status

リポジトリ

https://github.com/mackerelio/mackerel-agent-plugins/tree/master/mackerel-plugin-nginx

参考

stub_statusを有効にする設定方法やプラグインが参照する各変数の詳細については、以下 ngx_http_stub_status_module の説明をご覧ください。

Module ngx_http_stub_status_module