Amazon CloudWatchとは
Amazon CloudWatchとは、AWSリソースやアプリケーションを監視するサービスです。
稼働状況のモニタリングや、障害検知をするために利用されます。
Amazon CloudWatchは、いくつかの機能があり、それぞれ連携して動作します。
(1) CloudWatch Metrics
CloudWatch Metricsは、Amazon EC2インスタンスのCPUやメモリ使用率を収集など、様々なAWSサービスやオンプレミスのメトリクスを収集できます。
メトリクスには「標準メトリクス」と「カスタムメトリクス」の2種類あり、それぞれ取得できるデータが異なります。
例えば、それぞれ以下のようなデータを取得できます。
標準メトリクス | カスタムメトリクス |
---|---|
CPU使用率 | メモリ使用率 |
ネットワークインターフェイスのトラフィック量 | ディスク使用率 |
また、標準メトリクスのデータは基本的に1分間隔で生成されます。生成する間隔を短くしたい場合は、カスタムメトリクスの高解像度を利用すると最短で1秒間隔で生成できます。
(2) CloudWatch Alerms
CloudWatch Alermsは、収集したメトリクス値の条件を設定して、条件に一致した場合にアラームを発行するサービスです。
アラームの状態は「OK(正常)」、「ALARM(以上)」、「INSUFFICIENT_DATA(判定不明)」の3種類があります。
それぞれの状態に応じて、アラームのアクションを行うことができます。
例えば、Amazon Simple Notification Service (Amazon SNS)と一緒に利用することでアラートメールを送信することができます。
(3) CloudWatch Logs
AWSサービスのログ監視や保存をすることができるサービスです。
Amazon EC2やAWS CloudTrailなど様々なAWSリソースのログを保存できます。
ログの保存期間は「1日」から「永久」を選択できます。
また、サブスクリプションフィルタを用いて、CloudWatch Logsに保存された特定の文字列をフィルタすることができます。
(4) CloudWatch Logs insights
CloudWatch Logs insightsは、CloudWatch Logsのログデータをコマンドを用いて検索ができ、そのデータを用いて分析することができます。
以下の7つのコマンドを実行できます。
コマンド | コマンドの概要 |
---|---|
display | クエリ結果に表示するフィールドを指定 |
fields | 指定したフィールドをログイベントから取得 |
filter | クエリの結果を1つ以上の条件に基づいてフィルタリング |
state | ログフィールドの値に基づいて集約統計を計算 |
sort | 取得したログイベントをソート |
limit | クエリから返されるログイベントの数を指定 |
parse | ログフィールドからデータを抽出し、1つ以上のエフェメラルフォールドを作成 |
(5) CloudWatch Dashboards
CloudWatch Dashboardsは、CloudWatchにて収集したデータをグラフなどで表示するサービスです。
以下の種類のダッシュボードを作成及び表示できます。
種類 | 概要 |
---|---|
折れ線グラフ | 時間経過でメトリクスを比較 |
スタックエリア | 時間経過で合計を比較 |
数値 | メトリクスの最新値を表示 |
テキスト | マークダウン形式による表示 |
クエリの結果 | Logs Insightから結果を表示 |
(6) CloudWatch Events
CloudWatch Eventsは、リソース変更のイベントに応答してアクションを実行するサービスです。
Amazon CloudWatchの料金
Amazon CloudWatchは主に以下の7個の料金が掛かります。
各機能ごとに無料枠がありますので、無料枠を超える場合に料金が発生します。
(1) CloudWatch Metrics
詳細モニタリングのメトリクスやAPIリクエストなど一定の量に関しては無料で利用できます。
以下の場合に料金が発生します。
(a) メトリクスをCloudWatchに送信したメトリクス数によって料金が発生します。
(b) GetMetricData APIリクエストにて取得したメトリクス数によって料金が発生します。
(c) CloudWatch Metric Streamsとは、ほぼリアルタイムでメトリクスの継続的に自身のアプリに送る機能です。そのCloudWatch Metric Streamsを利用する場合、更新されたメトリクスの件数によって料金が発生します。
(2) CloudWatch Dashboards
毎月最大50個のメトリクスに対応するダッシュボード3個まで無料で利用できます。
それ以上のダッシュボードを作成すると、ダッシュボードの個数分の料金が発生します。
(3) CloudWatch Alerms
アラームメトリクスの個数10件まで無料で利用できます。
それ以上のアラームについて、アラームメトリクスに対して料金が発生します。
(4) ログ
以下の3つのいずれかの操作を実施した場合、それぞれのデータ量に応じて料金が発生します。
・収集 (データの取り込み)
・保存 (アーカイブ)
・分析 (Logs Insightsのクエリ)
上記の内容の合計5GBデータまでは無料で利用できます。
(5) CloudWatch Events
カスタムイベントを除くすべてのイベントは無料で利用できます。
カスタムイベントを利用する場合は、イベント数に応じて料金が発生します。
(6) CloudWatch Logs insights
1か月に1つのContributor Insightsルールを無料で利用できます。
ルール/月に一致する最初のログイベントを100万件まで無料で利用できます。
それ以上のContributor Insightsルールを作成すると、ルールごとに料金が発生します。
ログイベントの件数ごとに料金が発生します。
(7) Canaries
Canaryは、スケジュールに従って実行される設定可能なスクリプトであり、エンドポイントとAPIをモニタリングできます。
1か月あたりCanaryを100回まで無料で実行できます。
それ以上実行する場合は、実行数によって料金が発生します。
Amazon CloudWatchの料金については、以下のAWSの公式サイトをご確認ください。
AWSに関する記事
AWSについての関連記事は以下の通りです。
必要に応じて、ご確認ください。