[AWS][CloudWatch] Nginx のカスタムメトリクスを作ってみた

この記事は公開されてから7年経過しています。現在とは内容が異なる場合がありますのでご注意ください。
最新の記事や関連記事をお探しの方は下の「サイト内検索」で検索してみてください。

昨日の MySQL のスレッド数監視スクリプトに続いて、 Nginx の接続数を監視するスクリプトを作成しました。

CloudWatch_Management_Console_-_2014-05-16_15.46.02

Nginx の stub_status を使って取得できるステータス情報から Active connection の数値を取得しています。
昨日の mysqladmin status は1行だけの出力でしたが、今回は複数行になるため、改行を別の文字に置き換えて1行にした上で目的の数値を取り出しています。
あと、スクリプトが複数になったので、共通する環境変数は別ファイル(.aws_profile)で設定できるように分割しました。
詳しい使い方、設定の方法は GitHub の README をお読みください。
GitHub: torut/cloudwatch

スクリプトは GitHub で公開しています。
GitHub: torut/cloudwatch

シェルスクリプトで目的の数値を取り出すことさえできれば簡単に CloudWatch に送信できるので便利ですね。
ただし、カスタムメトリクス、APIリクエストも課金対象になるので注意しましょう。

Amazon CloudWatch のカスタムメトリックス
$0.50 : メトリックスあたり/月
Amazon CloudWatch API リクエスト
$0.01 : 1,000 Get、List、または Put リクエストあたり

see: Amazon CloudWatch 料金表