0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Putメトリクスを使って監視テストやってみた。

Posted at

はじめに

監視を作った際にメトリクスを意図的に発生させてちゃんとリソース監視ができてるかを
テストするためにPUTメトリクスという仕組みを利用して発生させる。

CloudWatchとは

CloudWatchはAWSが提供するモニタリングのためのマネージドサービス

ログ監視機能(CloudWatch Logs)

CloudWatchエージェントをインストールすることで、AWSサービスのログを監視することができる機能
CloudWatch Logs Insightsという拡張機能では、独自の構文を使ってクエリのようにデータを検索したり分析したりすることができる機能
ただ、お金はかかる。

アラーム通知機能(CloudWatch Alarms)

メトリクスが特定のしきい値を超えた場合とか下回った場合、データポイントが出てない場合(常に取れているものが)など状況に
合わせてアラートを発報させることができる。アラームは、AWS SNSを活用してメールに飛ばすなど可能。
NewRelicとかDatadogとかを使ってる場合はインテグレーションすることでNewRelic、Datadogなどモニタリングツールに連携することができ
そちらでどういうふうに通知させるかなどの設定をすることができる。

などなど....

CloudWatchだけでもかなりのサービスが存在するのでその時々によって使い分けたりする必要がある。

Putメトリクス

PutMetricDataというAPIを使用する。

$ aws cloudwatch put-metric-data --namespace XXXXXXXXX --metric-name XXXXXXXXX XXXXXXXXX=XXXXXXXXXXXXXXX --value XX

【例(Lambdaのエラー)】

$ aws cloudwatch put-metric-data --namespace AWS/Lambda --metric-name Errors --dimensions FunctionName=リソース名 --value 1

namespace:名前空間
metric-name:発生させたいメトリクス(エラーとかレイテンシーとか)
value:それぞれに設定しているモニターのしきい値を超える値を記載

dimensionsなどがわからない場合

GUIでの確認する方法

Cloudwatch -> メトリクス -> 参照から AWS 名前空間から確認することが可能

CLIから確認する方法

namespaceはGUIから確認する。

$ aws cloudwatch list-metrics --namespace AWS/Lamba

上記のコマンドを実行するとDimensionsなどの情報を確認することができる。

最後に

監視テストで今回はPutメトリクスをやってみたが、結構簡単に擬似的にテストできることがわかった。
他にもAWS Fault Injection Simulator(AWS FIS)使っても確認できると思うけど、ただこのサービスは疑似障害・疑似攻撃を稼働中のシステムに
与えた際にどれだけ耐えるかとか回復力あるかとかを確認する手法「カオスエンジニアリング」が行えるものなので監視テストで使用するには大掛かり
というかそこまでする必要もないのかなと思うのでPutメトリクスは一番手っ取り早くできるのではないかなと思います。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?