引き続き設定
batchiです。
引き続きEC2Config機能を用いたカスタムメトリクスについてご紹介します。
前回の記事では下記ページについて
ステップ 3:まで紹介しましたので、ステップ 4:から再開していきます。
http://docs.aws.amazon.com/ja_jp/AWSEC2/latest/WindowsGuide/UsingConfig_WinAMI.html#send_logs_to_cwl
-CloudWatch へのパフォーマンスカウンタの送信と CloudWatch Logs へのログの送信
ステップ 4: CloudWatch と CloudWatch Logs に送信するパフォーマンスカウンタとログを設定する
公式のページではかなりボリューミーに書かれていますが、
やってみれば意外とあっさりしています。
Jsonファイルの”PerformanceCounter”セクションに、
下記のパラメータを設定するだけです。
・Id
・FullName
・CategoryName
・CounterName
・InstanceName
・MetricName
・Unit
・DimensionName
・DimensionValue
Id
ファイル内で一意であれば任意の値でOKです。
FullName
変更は加えません。そのままでいきましょう。
CategoryName
オブジェクトのことです。
下記画像①に該当する部分です。
CounterName
カウンター名です。
下記画像②に該当する部分です。
InstanceName
インスタンス名です。
(EC2インスタンスとは無関係です。)
下記画像③に該当する部分です。
例えばオブジェクト”Memory”などはインスタンスが存在しないため、
InstanceNameは何も指定しないことになります。
あれ、上の画像では③に何か書いてあるじゃないか。
すいません、Memoryではないオブジェクトを選択している画面です。
(なんでこんな分かりづらい画像を撮ったのだろう僕は)
↑そもそもこの画像は何の画面?
WindowsServer上のパフォーマンスカウンタの画像です。
「ファイル名を指定して実行」に「perfmon」と入力して立ち上げて、
緑のプラスボタンをクリックしたら出てきます。
MetricName
メトリクス名です。任意の値を入れましょう。
Unit
単位です。ドキュメントに載っている候補の中から、
適切な値を選択して入れましょう。
DimensionName
入れなくてもいいそうです。
入れないでいきましょう。
DimensionValue
上に同じです。
“PerformanceCounter”セクションの設定は以上です。
複数のメトリクスを設定したい場合は、
セクションごとコピーして各パラメータを修正しましょう。
ステップ 5: フロー制御を設定する
Jsonファイルの”Flows”セクションを編集します。
"Flows": { "Flows": [ "PerformanceCounter,CloudWatch" ] }
上の例で言う “PerformanceCounter”と
“CloudWatch”は各セクションで設定したIDのことです。
ステップ 4で複数のセクションを設定した場合は、
こんなイメージになります。
"Flows": { "Flows": [ "(PerformanceCounter,PerformanceCounter2),CloudWatch" ] }
ステップ 6: EC2Config を再開する
Jsonファイルを更新後はEC2Configの再起動が必要です。
ここまで既存のJsonファイルの編集ではなく、
新たに作成したJsonファイルの編集を行っていた場合には下記の場所に格納しましょう。
ファイル名…AWS.EC2.Windows.CloudWatch.json
PATH…C:\Program Files\Amazon\Ec2ConfigService\Settings
さくっとEC2Configを再起動させます。
>net stop ec2config Ec2Config サービスを停止中です.. Ec2Config サービスは正常に停止されました。 >net start ec2config Ec2Config サービスを開始します. Ec2Config サービスは正常に開始されました。
設定完了
以上で設定完了です。
Cloudwatchの画面上にきちんと表示されている…はず。
複数のメトリクスを設定した場合に、
一方は表示されるけど一方が表示されない…
という事象がしばしば発生しましたが、
大抵時間が解決してくれました。
この辺りの検証はまた改めてできたらいいなと。
今回は以上です。