Amazon CloudWatch 開発者ガイド

Amazon CloudWatch
開発者ガイド
API Version 2010-08-01
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch: 開発者ガイド
Copyright © 2015 Amazon Web Services, Inc. and/or its affiliates. All rights reserved.
Abstract
Amazon CloudWatch を使用してメトリックスを収集し、追跡します。メトリックスは、リソースとアプ
リケーションについて測定する変数です。
The following are trademarks of Amazon Web Services, Inc.: Amazon, Amazon Web Services Design, AWS, Amazon CloudFront,
AWS CloudTrail, AWS CodeDeploy, Amazon Cognito, Amazon DevPay, DynamoDB, ElastiCache, Amazon EC2, Amazon Elastic
Compute Cloud, Amazon Glacier, Amazon Kinesis, Kindle, Kindle Fire, AWS Marketplace Design, Mechanical Turk, Amazon Redshift,
Amazon Route 53, Amazon S3, Amazon VPC, and Amazon WorkDocs. In addition, Amazon.com graphics, logos, page headers, button
icons, scripts, and service names are trademarks, or trade dress of Amazon in the U.S. and/or other countries. Amazon's trademarks
and trade dress may not be used in connection with any product or service that is not Amazon's, in any manner that is likely to cause
confusion among customers, or in any manner that disparages or discredits Amazon.
All other trademarks not owned by Amazon are the property of their respective owners, who may or may not be affiliated with, connected
to, or sponsored by Amazon.
Amazon CloudWatch 開発者ガイド
Table of Contents
Amazon CloudWatch とは?? ........................................................................................................... 1
Amazon CloudWatch アーキテクチャ ....................................................................................... 2
Amazon CloudWatch の概念 ................................................................................................... 2
メトリックス ................................................................................................................ 3
名前空間 ...................................................................................................................... 4
ディメンション ............................................................................................................. 4
タイムスタンプ ............................................................................................................. 6
単位 ............................................................................................................................ 7
統計 ............................................................................................................................ 7
期間 ............................................................................................................................ 8
集約 ............................................................................................................................ 8
アラーム ...................................................................................................................... 9
リージョン ................................................................................................................. 10
サポート対象の AWS サービス .............................................................................................. 10
CloudWatch へのアクセス .................................................................................................... 12
リージョンとエンドポイント ................................................................................................. 13
CloudWatch の制限 .............................................................................................................. 13
関連 AWS サービス ............................................................................................................. 14
リソース ............................................................................................................................ 14
準備作業 .................................................................................................................................... 16
アマゾン ウェブ サービス(AWS)にサインアップ .................................................................. 16
Amazon CloudWatch コンソールにサインインする ................................................................... 17
コマンドラインインターフェイスのセットアップ ..................................................................... 18
Amazon CloudWatch の使用開始 ................................................................................................... 19
シナリオ: CloudWatch で予想請求額をモニタリングする ........................................................... 19
手順 1: 予想請求額のモニタリングを有効にする ............................................................... 20
手順 2: 請求アラームを作成する ................................................................................... 20
手順 3: アラームの状態をチェックする ........................................................................... 24
手順 4: 請求アラームを編集する .................................................................................... 25
手順 5: 請求アラームを削除する .................................................................................... 25
シナリオ: メトリックスを CloudWatch にパブリッシュする ....................................................... 26
手順 1: データ構成を定義する ....................................................................................... 27
手順 2: CloudWatch にメトリックスを追加する ................................................................ 27
手順 3: CloudWatch から統計を取得する ......................................................................... 28
手順 4: コンソールでグラフを表示する ........................................................................... 29
メトリックスの表示、グラフ化、パブリッシュ ................................................................................ 30
利用可能なメトリックスを表示する ....................................................................................... 30
AWS マネジメントコンソール ....................................................................................... 31
コマンドラインツール .................................................................................................. 32
クエリ API ................................................................................................................. 33
利用可能なメトリックスを検索する ....................................................................................... 34
メトリックスを選択および選択解除する ................................................................................. 35
メトリックスの統計を取得する ............................................................................................. 38
特定の EC2 インスタンスの統計を取得する ..................................................................... 38
インスタンス全体の統計の集約 ..................................................................................... 43
Auto Scaling グループ別に集約された統計を取得する ....................................................... 48
イメージ(AMI) ID 別に集約された統計を取得する ......................................................... 52
メトリックスをグラフ化する ................................................................................................. 56
メトリックスをグラフ化する ......................................................................................... 57
複数リソースの単一メトリックスをグラフ化する ............................................................. 58
複数のメトリックスをグラフ化する ............................................................................... 61
グラフで日付と時刻を変更する ..................................................................................... 62
グラフの統計を変更する ............................................................................................... 63
グラフの期間を変更する ............................................................................................... 65
グラフのタイトルを変更する ......................................................................................... 67
API Version 2010-08-01
iii
Amazon CloudWatch 開発者ガイド
グラフのメトリックスからアラームを作成する ................................................................ 68
グラフを拡大する ........................................................................................................ 69
グラフの時間を遡る ..................................................................................................... 71
グラフの時間を進める .................................................................................................. 72
グラフの「現在」にジャンプする .................................................................................. 73
メトリックスの Y 軸を切り換える .................................................................................. 74
グラフを保存する ........................................................................................................ 75
カスタムメトリックスをパブリッシュする .............................................................................. 77
単一データポイントをパブリッシュする ......................................................................... 77
統計セットをパブリッシュする ..................................................................................... 78
値ゼロ(0)をパブリッシュする .................................................................................... 78
アラームの作成 ........................................................................................................................... 80
Amazon Simple Notification Service の設定 .............................................................................. 82
AWS マネジメントコンソール ....................................................................................... 83
コマンドラインツール .................................................................................................. 87
アラームの作成 ................................................................................................................... 88
CPU 使用率アラームに基づいてメールを送信する .................................................................... 89
AWS マネジメントコンソール ....................................................................................... 90
コマンドラインツール .................................................................................................. 92
ロードバランサーアラームに基づいてメールを送信する ............................................................ 92
AWS マネジメントコンソール ....................................................................................... 93
コマンドラインツール .................................................................................................. 95
ストレージスループットアラームに基づいてメールを送信する ................................................... 95
AWS マネジメントコンソール ....................................................................................... 96
コマンドラインツール .................................................................................................. 98
インスタンスを停止、終了、または復旧するアラームを作成する ............................................... 98
Amazon CloudWatch アラームへのアクションの追加 ........................................................ 99
Amazon CloudWatch アラームアクションシナリオ ......................................................... 119
予想請求額のモニタリング .................................................................................................. 124
予想請求額のモニタリングを有効にする ....................................................................... 125
請求アラームの作成 ................................................................................................... 125
請求アラームの編集 ................................................................................................... 131
アラーム状態の確認 .................................................................................................. 132
請求アラームの削除 ................................................................................................... 132
ログファイルのモニタリング ....................................................................................................... 134
概念 ................................................................................................................................. 135
はじめに .......................................................................................................................... 135
CloudWatch Logs エージェントの前提条件 .................................................................... 136
クイックスタート: 既存の EC2 インスタンスに CloudWatch Logs エージェントをインストー
ルして設定する ......................................................................................................... 136
クイックスタート: 新規 EC2 インスタンスに CloudWatch Logs エージェントをインストール
して設定する ............................................................................................................ 140
クイックスタート: AWS OpsWorks および Chef を使用して CloudWatch Logs エージェント
をインストールする ................................................................................................... 143
クイックスタート: AWS CloudFormation を使用してログデータを CloudWatch Logs に送信
する ......................................................................................................................... 148
CloudWatch Logs エージェントのステータスをレポートします。 ..................................... 149
CloudWatch Logs エージェントの開始 .......................................................................... 149
CloudWatch Logs エージェントの停止 .......................................................................... 149
CloudWatch Logs エージェントのリファレンス .............................................................. 150
ログデータの表示 .............................................................................................................. 156
ログの保持期間の変更 ........................................................................................................ 156
ログデータの検索およびフィルタリング ............................................................................... 157
フィルタとパターンの構文 .......................................................................................... 158
メトリックスフィルタの作成 ....................................................................................... 163
メトリックスフィルタの一覧表示 ................................................................................. 172
メトリックスフィルタの削除 ....................................................................................... 173
フィルタパターンを使用したログデータ検索 ................................................................. 174
API Version 2010-08-01
iv
Amazon CloudWatch 開発者ガイド
サブスクリプションを使用したログデータのリアルタイム処理 .................................................
サブスクリプションフィルタの使用 ..............................................................................
API 呼び出しのログ作成 .............................................................................................................
CloudTrail 内の CloudWatch 情報 .........................................................................................
Amazon CloudWatch ログファイルエントリの概要 ................................................................
Amazon EC2 インスタンスのモニタリングスクリプト .....................................................................
Amazon CloudWatch Monitoring Scripts for Linux ....................................................................
前提条件 ..................................................................................................................
ご利用開始にあたって ................................................................................................
スクリプトの使用 ......................................................................................................
AWS マネジメントコンソールでのカスタムメトリックスの表示 .......................................
Amazon CloudWatch Monitoring Scripts for Windows ...............................................................
ご利用開始にあたって ................................................................................................
スクリプトの使用 ......................................................................................................
AWS アカウントへのユーザーアクセスのコントロール ...................................................................
Amazon CloudWatch ARN ...................................................................................................
CloudWatch アクション ......................................................................................................
CloudWatch キー ...............................................................................................................
CloudWatch のポリシーの例 ................................................................................................
名前空間、ディメンション、メトリックスのリファレンス ...............................................................
AWS の名前空間 ................................................................................................................
Auto Scaling のディメンションおよびメトリックス ................................................................
Auto Scaling インスタンスのサポート ...........................................................................
Auto Scaling グループのサポート .................................................................................
AWS Billing ディメンションとメトリックス ...........................................................................
AWS Billing メトリックス ...........................................................................................
AWS Billing メトリックスのディメンション ...................................................................
Amazon CloudFront のディメンションおよびメトリックス ......................................................
Amazon CloudFront メトリックス ................................................................................
CloudFront メトリックスのディメンション ....................................................................
Amazon CloudSearch のディメンションおよびメトリックス ....................................................
Amazon CloudSearch メトリックス ..............................................................................
Amazon CloudSearch メトリックスのディメンション .....................................................
Amazon DynamoDB のディメンションおよびメトリックス ......................................................
DynamoDB メトリックス ............................................................................................
DynamoDB メトリックスのディメンション ...................................................................
Amazon ElastiCache のディメンションおよびメトリックス .....................................................
ElastiCache メトリックスのディメンション ...................................................................
ホストレベルのメトリックス .......................................................................................
Memcached のメトリックス ........................................................................................
Redis のメトリックス .................................................................................................
Amazon EBS のディメンションおよびメトリックス ...............................................................
Amazon EBS のメトリックス ......................................................................................
Amazon EBS メトリックスのディメンション .................................................................
Amazon Elastic Compute Cloud のディメンションおよびメトリックス ......................................
Amazon EC2 メトリックス .........................................................................................
Amazon EC2 メトリックスのディメンション .................................................................
Elastic Load Balancing のディメンションおよびメトリックス ...................................................
Elastic Load Balancing のメトリックス .........................................................................
Elastic Load Balancing メトリックスのディメンション ....................................................
Amazon Elastic MapReduce のディメンションおよびメトリックス ...........................................
Amazon EMR メトリックス .........................................................................................
Amazon EMR ディメンション .....................................................................................
Amazon Kinesis のディメンションおよびメトリックス ............................................................
Amazon Kinesis メトリックス .....................................................................................
Amazon Kinesis メトリックスのディメンション .............................................................
Amazon Machine Learning のディメンションおよびメトリックス .............................................
Amazon ML メトリックス ...........................................................................................
API Version 2010-08-01
v
176
177
181
181
182
187
188
188
190
191
195
195
196
197
206
207
207
208
208
211
212
213
213
215
216
216
216
217
217
218
218
218
219
219
219
226
227
227
228
228
230
232
232
234
234
234
237
238
238
240
241
241
245
245
245
247
247
247
Amazon CloudWatch 開発者ガイド
Amazon Machine Learning メトリックスのディメンション ..............................................
AWS OpsWorks のディメンションおよびメトリックス ............................................................
AWS OpsWorks メトリックス .....................................................................................
AWS OpsWorks メトリックスのディメンション .............................................................
Amazon Redshift のディメンションおよびメトリックス ..........................................................
Amazon Redshift メトリックス ....................................................................................
Amazon Redshift メトリックスのディメンション ............................................................
Amazon RDS のディメンションおよびメトリックス ...............................................................
Amazon RDS メトリックス .........................................................................................
RDS メトリックスのディメンション ............................................................................
Amazon Route 53 のディメンションおよびメトリックス .........................................................
Amazon Route 53 メトリックス ...................................................................................
Amazon Route 53 メトリックスのディメンション ..........................................................
Amazon Simple Notification Service のディメンションおよびメトリックス .................................
Amazon Simple Notification Service メトリックス ...........................................................
Amazon Simple Notification Service メトリックスのディメンション ..................................
Amazon SQS のディメンションおよびメトリックス ...............................................................
Amazon SQS メトリックス .........................................................................................
Amazon SQS メトリックスのディメンション ................................................................
Amazon SWF のディメンションおよびメトリックス ...............................................................
ワークフローのメトリックス .......................................................................................
アクティビティのメトリックス ....................................................................................
AWS Storage Gateway のディメンションおよびメトリックス ..................................................
AWS Storage Gateway メトリックス ............................................................................
AWS Storage Gateway メトリックスのディメンション ...................................................
Amazon WorkSpaces のディメンションおよびメトリックス ....................................................
Amazon WorkSpaces メトリックス ..............................................................................
Amazon WorkSpaces メトリックスのディメンション .....................................................
API リクエストの実行 ................................................................................................................
Amazon CloudWatch のエンドポイント .................................................................................
クエリパラメータ ..............................................................................................................
RequestId .........................................................................................................................
クエリ API 認証 .................................................................................................................
署名バージョン 2 を用いたクエリ API の例 ............................................................................
署名バージョン 2 を用いたクエリ API のエラーメッセージ ......................................................
利用可能なライブラリ ........................................................................................................
ドキュメント履歴 ......................................................................................................................
AWS の用語集 ...........................................................................................................................
API Version 2010-08-01
vi
248
248
248
249
250
250
252
253
253
255
256
256
256
256
257
257
258
258
259
259
260
260
261
261
265
266
266
267
268
268
268
269
269
271
274
275
276
281
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch とは??
Abstract
Amazon CloudWatch を使用して AWS リソースとアプリケーションをモニタリングすることで、パフォーマンス
のメトリックスを収集し、追跡します。
Amazon CloudWatch は、アマゾン ウェブ サービス(AWS)リソースと、AWS で実行されているアプ
リケーションをリアルタイムでモニタリングします。CloudWatch を使用してメトリックスを収集し、
追跡できます。メトリックスは、リソースとアプリケーションについて測定する変数です。CloudWatch
アラームは、ユーザーが定義したルールに基づいて、通知を送信したり、モニタリングしているリソー
スに自動的に変更を加えたりします。たとえば、CPU 使用率、および Amazon Elastic Compute Cloud
(Amazon EC2)インスタンスのディスク読み/書きをモニタリングし、そのデータを基に、増加する
負荷を処理する追加のインスタンスを開始すべきかどうかを判断します。また、このデータを使用し
て、十分利用されていないインスタンスを停止することで、費用を節約することができます。AWS に
付属している組込みメトリックスをモニタリングすることに加えて、独自のカスタムメトリックスもモ
ニタリングできます。CloudWatch を使って、リソース使用率、アプリケーションパフォーマンス、オ
ペレーションの正常性をシステムワイドに把握できます。
このセクションの残りでは、CloudWatch でリソースとアプリケーションをモニタリングするために何
を行う必要があるかを理解するのに役立つ、かぎとなる概念と用語を紹介します。
Topics
• Amazon CloudWatch アーキテクチャ (p. 2)
• Amazon CloudWatch の概念 (p. 2)
• サポート対象の AWS サービス (p. 10)
• CloudWatch へのアクセス (p. 12)
• リージョンとエンドポイント (p. 13)
• CloudWatch の制限 (p. 13)
• 関連 AWS サービス (p. 14)
• Amazon CloudWatch のリソース (p. 14)
「CloudWatch の準備作業」セクションでは、AWS のサインアッププロセスと CloudWatch コマンド
ラインインターフェイス(CLI)のセットアップについて説明します。「CloudWatch の使用開始」セ
クションでは、メトリックスのパブリッシュ、統計の取得、アラーム設定のプロセスについて説明しま
す。
API Version 2010-08-01
1
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch アーキテクチャ
Amazon CloudWatch アーキテクチャ
Amazon CloudWatch は、基本的にはメトリックスのレポジトリーです。AWS 製品(Amazon EC2 な
ど)は、メトリックスをレポジトリーに置き、これらのメトリックスを基に統計が取得されます。独自
のカスタムメトリックスをレポジトリーに置く場合も、そのような統計を取得することができます。
メトリックスを使用して統計を計算し、そのデータをグラフ化して CloudWatch コンソールに表示でき
ます。メトリックスを生成して CloudWatch に送信するその他の AWS リソースの詳細については、
Amazon CloudWatch の名前空間、ディメンション、メトリックスのリファレンス (p. 211) を参照して
ください。
一定の基準が満たされたときに Amazon EC2 インスタンスを停止、開始、または終了するアラームア
クションを設定できます。加えて、ユーザー操作なしで Auto Scaling および Amazon Simple Notification
Service (Amazon SNS)アクションを開始するアラームを作成できます。CloudWatch アラーム作成
の詳細については、アラーム (p. 9) を参照してください。
Amazon CloudWatch の概念
Abstract
Amazon CloudWatch を使って作業するために知る必要がある基礎、概念、用語について説明します。
Amazon CloudWatch を理解し使用するために重要な用語と概念を、以下に示します。
Topics
• メトリックス (p. 3)
• 名前空間 (p. 4)
API Version 2010-08-01
2
Amazon CloudWatch 開発者ガイド
メトリックス
• ディメンション (p. 4)
• タイムスタンプ (p. 6)
• 単位 (p. 7)
• 統計 (p. 7)
• 期間 (p. 8)
• 集約 (p. 8)
• アラーム (p. 9)
• リージョン (p. 10)
メトリックス
メトリックスは CloudWatch の基本的概念で、時系列に並んだデータポイントのセットを表していま
す。これらのデータポイントは、カスタムメトリックスまたは AWS にある他のサービスのメトリック
スのどちらにもなります。ユーザーまたは AWS 製品がメトリックスのデータポイントを CloudWatch
にパブリッシュし、ユーザーはこのデータポイントに関する統計を、時系列順に並べられたデータ一式
として読み出すことができます。メトリックスは作成されたリージョンにのみ存在します。
メトリックスをモニタリング対象の変数と考えるならば、データポイントは時間の経過と共に変わる変
数の値を表します。たとえば、特定の Amazon EC2 インスタンスの CPU 使用率を示すメトリックスが
あり、Elastic Load Balancing ロードバランサーのレイテンシーを示すメトリックスがある、といった
具合です。
データポイント自体は、アマゾン ウェブ サービスの製品やアプリケーションだけではなく、データを
収集するあらゆるアプリケーションや業務活動から取得することができます。たとえば、メトリックス
は特定の Amazon EC2 インスタンスの CPU 使用率にもなれば、冷凍設備の温度になる場合もありま
す。
メトリックスは名前、名前空間、1 つ以上のディメンションで一意に定義されます。各データポイント
には、タイムスタンプと、(オプションで)測定単位があります。統計をリクエストして返ってきた
データストリームは、名前空間、メトリックス名、ディメンション、(オプションで)単位により識別
されます。
PutMetricData API アクション(または put-metric-data コマンド)を使用してカスタムメトリッ
クスを作成し、そのメトリックスのデータポイントをパブリッシュできます。データポイントの順序や
比率は、任意で選択して、追加できます。CloudWatch は、統計がリクエストされると、完全に同一の
データポイント(重複した値、タイムスタンプ、単位)を集約します。
CloudWatch は、メトリックスデータを 2 週間保存します。何十もの異なる Amazon EC2 インスタン
スから受信するネットワークトラフィック、または複数の異なるウェブアプリケーションからリクエス
トされたページビューなど、さまざまなソースからメトリックスデータをパブリッシュすることができ
ます。指定された時間枠内で発生するメトリックスのデータポイントの統計をリクエストできます。
関連トピック
• PutMetricData (put-metric-data)
• ListMetrics (list-metrics)
• GetMetricStatistics (get-metric-statistics)
• 利用可能なメトリックスを表示する (p. 30)
API Version 2010-08-01
3
Amazon CloudWatch 開発者ガイド
名前空間
名前空間
CloudWatch 名前空間は、メトリックスのコンテナです。異なる名前空間のメトリックスは相互に切り
離されて、異なるアプリケーションのメトリックスが誤って同じ統計に集約されないようになっていま
す。
名前空間の名前は、メトリックス作成時に定義する文字列です。名前は有効な XML 文字でなければな
りません。一般的に、英数字 "0-9A-Za-z"、"."(ピリオド)、"-"(ハイフン)、"_"(アンダース
コア)、"/"(スラッシュ)、"#"(ハッシュ)、":"(コロン)が含まれます。AWS の名前空間はす
べて、命名規則 AWS/<service>(AWS/EC2 および AWS/ELB)に従っています。
Note
名前空間名の文字長は、256 文字未満である必要があります。
デフォルトの名前空間はありません。CloudWatch に置くあらゆるデータ要素には、名前空間を指定す
る必要があります。
関連トピック
• AWS の名前空間 (p. 212)
• インスタンス全体の統計の集約 (p. 43)
ディメンション
ディメンションは、メトリックスを一意に識別する名前と値のペアです。各メトリックスには、それを
表す固有の特徴があります。ディメンションはその特徴のカテゴリーと考えることができます。ディメ
ンションは、統計プランの構造を設計するのに役立ちます。ディメンションは、メトリックスの一意の
識別子の一部であるため、メトリックスに一意の名前と値のペアを追加するときは常に、新しいメト
リックスを作成していることになります。
PutMetricData アクション(またはコマンドラインでは put-metric-data に相当)でメトリック
スを作成するときに、ディメンションを指定します。CloudWatch にデータを供給する AWS のサービ
スも、各メトリックスにディメンションを指定します。CloudWatch クエリが返す結果セットにフィル
タを掛ける際にディメンションを使用できます。
たとえば、特定の Amazon EC2 インスタンス ID に設定された InstanceID のディメンションを指定
して、GetMetricStatistics を呼び出すことで、特定の Amazon EC2 インスタンスの統計を取得で
きます。
Amazon EC2 など特定のサービスが生成するメトリックスでは、CloudWatch は複数のディメンション
にまたがるデータを集約する場合があります。たとえば、ディメンションを指定せずに AWS/EC2 名前
空間にある1 つのメトリックスに対して GetMetricStatistics を呼び出すと、CloudWatch は、指
定されたメトリックスの全データを集約して、リクエストされた統計を作成します。ただし、CloudWatch
は、PutMetricData または put-metric-data で作成された複数メトリックスの複数ディメンショ
ンにまたがるデータを集約することはありません。
Note
1 メトリックス当たり最大 10 ディメンションを割り当てることができます。
このセクションの最後にある図では、put-metric-data の 4 つの呼び出しで 4 つの異なるメトリッ
クスを作成しています。これらの 4 つのみを呼び出した場合、次の 4 つのディメンションの組み合わ
せで統計を取得できます。
API Version 2010-08-01
4
Amazon CloudWatch 開発者ガイド
ディメンション
• Server=Prod,Domain=Frankfurt
• Server=Prod,Domain=Rio
• Server=Beta,Domain=Frankfurt
• Server=Beta,Domain=Rio
明示的に作成しなかったディメンションの組み合わせを用いて統計を取得することはできません。たと
えば、put-metric-data をさらに呼び出してこれらの組み合わせを指定する新しいメトリックスを作
成しない限り、以下のディメンションの組み合わせで統計を取得することはできません。
• Server=Prod,Domain=<null>
• Server=<null>,Domain=Frankfurt
• Server=Beta,Domain=<null>
• Server=<null>,Domain=Rio
• Server=Prod
• Server=Beta
Important
CloudWatch は、ディメンションの一意の組み合わせを、それぞれ別のメトリックスとして扱
います。たとえば、下図の put-metric-data の呼び出しでそれぞれ別個のメトリックスが作
成されています。これは、各呼び出しで異なるディメンション一式を使用しているためです。
これは、4 つの呼び出しすべてが同じメトリックス名 ServerStats であっても当てはまりま
す。このことが価格設定に与える影響については、「Amazon CloudWatch 製品情報」ページ
を参照してください。
API Version 2010-08-01
5
Amazon CloudWatch 開発者ガイド
タイムスタンプ
関連トピック
•
•
•
•
put-metric-data
get-metric-statistics
Amazon EC2 メトリックスのディメンション (p. 237)
Elastic Load Balancing メトリックスのディメンション (p. 240)
• RDS メトリックスのディメンション (p. 255)
タイムスタンプ
Amazon CloudWatch では、各メトリックスデータポイントにはタイムスタンプが付けられる必要があ
ります。タイムスタンプは、最大 2 週間前から 最大 2 時間後になります。ユーザーがタイムスタンプ
を指定しない場合は、データ要素を受信した時間を基に、CloudWatch がタイムスタンプを作成しま
す。
リクエストで使用するタイムスタンプは、dateTime オブジェクトでなければなりません。日付、時、
分、秒まですべて必要です。詳細については、http://www.w3.org/TR/xmlschema-2/#dateTime を参照し
てください。例: 2013-01-31T23:59:59Z必須ではありませんが、タイムスタンプは協定世界時(UTC ま
API Version 2010-08-01
6
Amazon CloudWatch 開発者ガイド
単位
たはグリニッジ標準時)のタイムゾーンで提供することが推奨されています。CloudWatch から統計を
取得する場合、すべての時間は UTC の時間帯を反映します。
単位
Units は統計の測定単位を表します。たとえば、Amazon EC2 NetworkIn メトリックスの単位は バ
イト(B) です。これは、NetworkIn が全ネットワークインターフェイスでインスタンスが受信する
バイト数を追跡しているためです。
また、カスタムメトリックスを作成するときも単位を指定することができます。単位は、データの概念
的意味を与えるのに役立ちます。Percent などの測定単位を指定するメトリックスデータポイントは
個別に集約されます。次のリストに、CloudWatch がサポートする一般的な単位の一部を挙げます。
• Seconds
• Bytes
• Bits
• Percent
• Count
• Bytes/Second(バイト/秒)
• Bits/Second(ビット/秒)
• Count/Second(カウント/秒)
• None(単位が指定されていない場合のデフォルト)
CloudWatch がサポートする単位の全リストについては、Amazon CloudWatch API リファレンス の
MetricDatum のデータタイプを参照してください。
CloudWatch は内部的に単位に意味を持たせていませんが、他のアプリケーションでは、選択した単位
を基に意味のある情報を引き出すことができます。単位を指定せずにデータをパブリッシュする場合、
CloudWatch は None 単位と関連付けます。単位を指定せずに統計を取得する場合、CloudWatch が同
じ単位のデータポイントをすべて 1 つに集約します。単位だけが異なっている 2 つのメトリックスが
ある場合、単位ごとに別々の 2 つのデータストリームが返されます。
統計
統計とは、メトリックスデータを指定した期間で集約したものです。CloudWatch は、カスタムデータ
または AWS の他のサービスから CloudWatch に与えられたメトリックスのデータポイントを基に、統
計を提供します。集約は、指定した期間内に、名前空間、メトリックス名、ディメンション、データポ
イントの測定単位を用いて行われます。次の表は利用可能な統計を説明しています。
統計
説明
Minimum
指定された期間に認められた最小値です。この値を用いて、アプリケーションの低
ボリュームのアクティビティを判断できます。
Maximum
指定された期間に認められた最大値です。この値を用いて、アプリケーションの高
ボリュームのアクティビティを判断できます。
Sum
該当するメトリックスで加算されたすべての合計値です。この統計は、メトリック
スの合計ボリュームを判断するのに役立ちます。
Average
指定した期間の Sum/SampleCount の値です。この統計を Minimum および Maximum
と比較することで、メトリックスの全容、および平均使用量がどれくらい Minimum
と Maximum に近いかを判断できます。この比較は、必要に応じていつリソースを増
減させるべきかを知るのに役立ちます。
API Version 2010-08-01
7
Amazon CloudWatch 開発者ガイド
期間
統計
説明
SampleCount 統計計算で使用するデータポイントのカウント(数)です。
GetMetricStatistics API アクションまたは get-metric-statistics コマンドを使用して統計
を取得します。メトリックスの値が作成されたときに使用した名前空間、メトリックス名、ディメン
ションのパラメータと同じ値を指定します。CloudWatch が集約に使用する開始時間と終了時間も指定
できます。開始時間と終了時間は、60 秒から 2 週間までの幅で指定できます。
Amazon CloudWatch では、PutMetricData API アクション(または put-metric-data コマンド)
および StatisticValues (statistic-values)パラメータにより事前計算された統計を追加する
ことができます。データポイント値の代わりに、SampleCount、Minimum、Maximum、Sum の値を指
定します(平均値は CloudWatch が計算します)。この方法で追加した値は、一致するメトリックスと
関連付けられたその他すべての値と一緒に集約されます。
関連トピック
• PutMetricData (put-metric-data)
• GetMetricStatistics (get-metric-statistics)
期間
期間とは、特定の Amazon CloudWatch の統計に関連する時間長です。各統計は、指定された期間に収
集されたメトリックスデータの集約を表しています。期間は秒単位で表されますが、期間の最小粒度は
分です。したがって、期間には 60 の倍数の値を指定します。たとえば、6 分の期間を指定するには 360
という値を使用します。期間の長さを変えることで、データの集約方法を調整できます。期間は、最短
1 分(60 秒)から最長 1 日(86,400 秒)までになります。
GetMetricStatistics を呼び出す際、Period パラメータで期間の長さを指定できます。関連する
2 つのパラメータ StartTime および EndTime では、統計に関連する全体の時間長を決定します。
Period パラメータのデフォルト値は 60 秒であるのに対して、StartTime と EndTime のデフォルト
値では過去 1 時間分の統計が得られます。
StartTime および EndTime のパラメータに選択した値により、GetMetricStatistics が返す期間
数が決まります。たとえば、GetMetricStatistics を Period、EndTime、StartTime パラメータ
のデフォルト値で呼び出すと、過去 1 時間で毎分の集約された統計一式が返されます。10 分区切りで
集約された統計を取得したい場合は、Period を 600 に設定します。1 時間分の集約された統計の場合
は、Period を 3600 に設定します。
期間は、CloudWatch アラームの機能においても重要な要素です。特定のメトリックスをモニタリング
するアラームを作成したなら、そのメトリックスと指定したしきい値を比較するよう CloudWatch に依
頼していることになります。ユーザーは、CloudWatch がその比較を行う方法を広範囲に制御できま
す。どれくらいの期間で比較するかだけでなく、何期間連続でしきい値を超過したら通知を送るかも設
定することができます。アラームの詳細については、アラーム (p. 9) を参照してください。
集約
GetMetricStatistics の呼び出しで指定した期間の長さに従って、Amazon CloudWatch は統計を集
約します。同一または類似したタイムスタンプを使って、望む数のデータポイントをパブリッシュでき
ます。GetMetricStatistics でデータポイントに関する統計を取得する際、CloudWatch はそれらを
期間の長さで区切って集約します。集約された統計は、詳細モニタリングを利用している場合のみ取得
できます。加えて、Amazon CloudWatch は複数のリージョンをまたがってデータを集約することはあ
りません。
API Version 2010-08-01
8
Amazon CloudWatch 開発者ガイド
アラーム
同じタイムスタンプだけでなく、同じ名前空間とディメンションを共有するメトリックスのデータポイ
ントをパブリッシュできます。GetMetricStatistics をさらに続けて呼び出せば、これらのデータ
ポイントに関する集約された統計が返されます。これを 1 つの PutMetricData リクエストで行えこ
とができます。CloudWatch は、同じタイムスタンプの同じ PutMetricData の呼び出しにある複数の
データポイントを受け入れます。また、どのタイムスタンプでも、同じメトリックスまたは異なるメト
リックスの複数のデータポイントをパブリッシュすることもできます。ただし、PutMetricData リク
エストのサイズは、HTTP GET リクエストでは 8 KB、HTTP POST リクエストでは 40 KB に制限され
ています。1 つの PutMetricData リクエストに最大 20 のデータポイントを含めることができます。
PutMetricData の使用が非現実的になるような大型のデータセットの場合、CloudWatch では、
StatisticSet という事前集約されたデータセットを挿入することができます。StatisticSets により、
CloudWatch に多数のデータポイントの Min(最小値)、Max(最大値)、Sum(合計)、SampleCount
(サンプルカウント)を与えます。StatisticSets は、1 分間に何回もデータを収集する必要がある場合
によく使用されます。たとえば、ウェブページのリクエストレイテンシーに関するメトリックスがある
とします。ウェブページがヒットされるたびに PutMetricData のリクエストをすることは意味を成
しません。そこで、そのウェブページの全ヒットのレイテンシーを収集し、そのデータを毎分集約し、
その StatisticSet を CloudWatch に送信することができます。
Amazon CloudWatch は、メトリックスのソースを区別しません。ソースが異なっていても、名前空間
とディメンションが同じメトリックスがパブリッシュされれば、CloudWatch はこれを 1 つのメトリッ
クスとして扱います。これは、分散型の、拡大縮小されたシステムのサービスメトリックスで有用で
す。たとえば、ウェブサーバーのアプリケーションのすべてのホストが処理するリクエストのレイテン
シーを表すメトリックスを 1 つにまとめてパブリッシュできます。CloudWatch はこれらを 1 つのメト
リックスとして扱い、アプリケーション全体ですべてのリクエストの最小値、最大値、平均、合計の統
計を取得できるようにします。
アラーム
アラームは、ユーザーが指定したパラメータを基に、ユーザーに代わって自動的にアクションを開始し
ます。アラームは、指定した期間の単一のメトリックスを監視し、一定の期間数におけるしきい値とメ
トリックスの値の関係性に基づいて、1 つ以上のアクションを実行します。アクションは、Amazon
Simple Notification Service(Amazon SNS)トピックまたは Auto Scaling ポリシーに送信される通知で
す。アラームは、持続的な状態変化の場合にのみアクションを呼び出します。CloudWatch アラームは
それが特定の状態にあるという理由だけではアクションを呼び出しません。アクションを呼び出すに
は、状態が変化し、その状態が特定の期間にわたって維持されている必要があります。アラームアク
ションはアラームと同じリージョンに存在する必要があります。 たとえば、アラームで呼び出される
Amazon SNS メッセージや Auto Scaling ポリシーなどは、モニタリングされているアラームおよびリ
ソースと同じリージョンに存在する必要があります。
アラームを作成する際、メトリックスのモニタリング頻度以上の期間を選択します。たとえば、Amazon
EC2 インスタンスの基本モニタリングでは、5 分ごとにメトリックスが提供されます。基本モニタリン
グのメトリックスにアラームを設定する場合、少なくとも 300 秒(5 分)の期間を選択します。Amazon
EC2 インスタンスの詳細モニタリングは 1 分ごとにメトリックスを提供します。詳細モニタリングに
アラームを設定する場合は、少なくとも 60 秒(1 分)を選択します。アラームは作成されたリージョ
ンにのみ存在します。
関連トピック
• PutMetricAlarm
• put-metric-alarm
• Amazon CloudWatch アラームの作成 (p. 80)
Auto Scaling ポリシーと Amazon SNS トピックを呼び出す CloudWatch アラームを設定する方法の例
については、Amazon CloudWatch アラームの作成 (p. 80) を参照してください。
API Version 2010-08-01
9
Amazon CloudWatch 開発者ガイド
リージョン
リージョン
Amazon クラウドコンピューティングリソースは、高可用性データセンター設備に収容されています。
拡張性と信頼性を高めるため、各データセンターは、リージョンとして知られる特定の地域に配置され
ています。リージョンは大きく、広く分散された地理的位置です。
Amazon の各リージョンは、Amazon の他のリージョンと完全に分離されるように設計されています。
これにより、障害が発生しても切り分けられるため、安定性が保たれ、Amazon の各リソースのローカ
リティが明確になります。Amazon CloudWatch は複数のリージョンをまたがってデータを集約するこ
とはありません。そのため、メトリックスはリージョン間で完全に分離されています。
各リージョンを表すエンドポイントの詳細については、「Amazon Web Services General Reference」
の「Regions and Endpoints」を参照してください。
サポート対象の AWS サービス
Abstract
メトリックスを送信し、CloudWatch によってモニタリングされる、サポート対象の AWS 製品を一覧表示します。
CloudWatch は、以下のサービスをモニタリングします。サービスの使用を開始するとすぐ、メトリッ
クスが CloudWatch に自動送信されます。
CloudWatch は、サポート対象の AWS 製品に基本モニタリングまたは詳細モニタリングを提供します。
基本モニタリングとは、サービスがデータポイントを 5 分ごとに CloudWatch に送信することを意味し
ます。詳細モニタリングとは、サービスがデータポイントを 1 分ごとに CloudWatch に送信することを
意味します。
Note
基本データ収集と詳細データ収集の両方をサポートするサービスを使用しており(例: Amazon
EC2 および Auto Scaling)、かつ詳細統計にアクセスする場合、そのサービスの詳細メトリッ
クスの収集を有効にする必要があります。
• Auto Scaling
Auto Scaling はデフォルトで 5 分ごとに CloudWatch にデータを送信します。追加料金で、Auto
Scaling で 1 分ごとに CloudWatch にデータが送信される詳細モニタリングを有効にできます。Auto
Scaling のディメンションおよびメトリックス (p. 213) を使ってアラームを作成できます。詳細につい
ては、「Auto Scaling 開発者ガイド」の「Monitor Your Auto Scaling Instances」を参照してくださ
い。
• Amazon CloudFront
Amazon CloudFront はデフォルトで 1 分ごとに CloudWatch にデータを送信します。Amazon
CloudFront のディメンションおよびメトリックス (p. 217) を使ってアラームを作成できます。詳細に
ついては、『Amazon CloudFront 開発者ガイド』の「CloudWatch を使用した CloudFront アクティ
ビティの監視」を参照してください。
• Amazon CloudSearch
Amazon CloudSearch はデフォルトで 1 分ごとに CloudWatch にデータを送信します。Amazon
CloudSearch のディメンションおよびメトリックス (p. 218) を使ってアラームを作成できます。詳細
については、『Amazon CloudSearch 開発者ガイド』の「Amazon CloudWatch を使用した Amazon
CloudSearch ドメインの監視」を参照してください。
• Amazon DynamoDB
API Version 2010-08-01
10
Amazon CloudWatch 開発者ガイド
サポート対象の AWS サービス
Amazon DynamoDB は 5 分ごとに CloudWatch にデータを送信します。Amazon DynamoDB のディ
メンションおよびメトリックス (p. 219) を使ってアラームを作成できます。詳細については、「Amazon
DynamoDB 開発者ガイド」の「Monitoring DynamoDB Tables with Amazon CloudWatch」を参照し
てください。
• Amazon ElastiCache
Amazon ElastiCache は毎分 CloudWatch にデータを送信します。Amazon ElastiCache のディメン
ションおよびメトリックス (p. 227) を使ってアラームを作成できます。詳細については、「Amazon
ElastiCache ユーザーガイド」の「Viewing Cache Cluster and Cache Node Metrics」を参照してくだ
さい。
• Amazon Elastic Block Store
Amazon Elastic Block Store は 5 分ごとに CloudWatch にデータを送信します。Amazon EBS のディ
メンションおよびメトリックス (p. 232) を使ってアラームを作成できます。詳細については、「Linux
インスタンス用 Amazon EC2 ユーザーガイド」の「Monitoring the Status of Your Volumes」を参照
してください。
• Amazon Elastic Compute Cloud
Amazon EC2 はデフォルトで 5 分ごとに CloudWatch にデータを送信します。追加料金で、Amazon
EC2 で 1 分ごとに CloudWatch にデータが送信される詳細モニタリングを有効にできます。Amazon
Elastic Compute Cloud のディメンションおよびメトリックス (p. 234) を使ってアラームを作成できま
す。詳細については、「Linux インスタンス用 Amazon EC2 ユーザーガイド」の「Monitoring Your
Instances」を参照してください。
• Elastic Load Balancing
Elastic Load Balancing は毎分 CloudWatch にデータを送信します。Elastic Load Balancing のディメ
ンションおよびメトリックス (p. 238) を使ってアラームを作成できます。詳細については、「Elastic
Load Balancing 開発者ガイド」の「Monitor Your Load Balancer Using Amazon CloudWatch」を参照
してください。
• Amazon Elastic MapReduce
Amazon Elastic MapReduce は 5 分ごとに CloudWatch にデータを送信します。Amazon Elastic
MapReduce のディメンションおよびメトリックス (p. 241) を使ってアラームを作成できます。詳細
については、「Amazon Elastic MapReduce 開発者ガイド」の「Monitor Metrics with Amazon
CloudWatch」を参照してください。
• Amazon Kinesis
Amazon Kinesis は毎分 CloudWatch にデータを送信します。Amazon Kinesis のディメンションおよ
びメトリックス (p. 245) を使ってアラームを作成できます。詳細については、『Amazon Kinesis
Developer Guide』の「Amazon CloudWatch を使用した Amazon Kinesis のモニタリング」を参照し
てください。
• Amazon Machine Learning
Amazon Machine Learning は 5 分ごとに CloudWatch にデータを送信します。Amazon Machine
Learning のディメンションおよびメトリックス (p. 247) を使ってアラームを作成できます。詳細につ
いては、『Amazon Machine Learning Developer Guide』の「Amazon CloudWatch メトリックスに
よる Amazon Machine Learning のモニタリング」を参照してください。
• AWS OpsWorks
AWS OpsWorks は毎分 CloudWatch にデータを送信します。AWS OpsWorks のディメンションおよ
びメトリックス (p. 248) を使ってアラームを作成できます。詳細については、「AWS OpsWorks ユー
ザーガイド」の「Monitoring」を参照してください。
• Amazon Redshift
Amazon Redshift は毎分 CloudWatch にデータを送信します。Amazon Redshift のディメンションお
よびメトリックス (p. 250) を使ってアラームを作成できます。詳細については、「Amazon Redshift
API Version 2010-08-01
11
Amazon CloudWatch 開発者ガイド
CloudWatch へのアクセス
Cluster Management Guide」の「Monitoring Amazon Redshift Cluster Performance」を参照してく
ださい。
• Amazon Relational Database Service
Amazon Relational Database Service は毎分 CloudWatch にデータを送信します。Amazon RDS の
ディメンションおよびメトリックス (p. 253) を使ってアラームを作成できます。詳細については、
「Amazon Relational Database Service ユーザーガイド」の「Monitoring a DB Instance」を参照して
ください。
• Amazon Route 53
Amazon Route 53 は毎分 CloudWatch にデータを送信します。Amazon Route 53 のディメンション
およびメトリックス (p. 256) を使ってアラームを作成できます。詳細については、「Amazon Route 53
開発者ガイド」の「Monitoring Health Checks Using Amazon CloudWatch」を参照してください。
• Amazon Simple Notification Service
Amazon Simple Notification Service は 5 分ごとに CloudWatchにデータを送信します。Amazon Simple
Notification Service のディメンションおよびメトリックス (p. 256) を使ってアラームを作成できます。
詳細については、「Amazon Simple Notification Service 開発者ガイド」の「Monitoring Amazon SNS
with Amazon CloudWatch」を参照してください。
• Amazon Simple Queue Service
Amazon Simple Queue Service 5 分ごとに CloudWatch にデータを送信します。Amazon SQS のディ
メンションおよびメトリックス (p. 258) を使ってアラームを作成できます。詳細については、「Amazon
Simple Queue Service 開発者ガイド」の「Monitoring Amazon SQS with Amazon CloudWatch」を参
照してください。
• Amazon Simple Workflow Service
Amazon Simple Workflow Service は 5 分ごとに CloudWatch にデータを送信します。Amazon SWF
のディメンションおよびメトリックス (p. 259) を使ってアラームを作成できます。詳細については、
Amazon Simple Workflow Service 開発者ガイド の Viewing Amazon SWF Metrics for CloudWatch
using the AWS Management Console を参照してください。
• AWS Storage Gateway
AWS Storage Gateway は 5 分ごとに CloudWatch にデータを送信します。AWS Storage Gateway
のディメンションおよびメトリックス (p. 261) を使ってアラームを作成できます。詳細については、
「AWS Storage Gateway ユーザーガイド」の「Monitoring Your AWS Storage Gateway」を参照し
てください。
• Amazon WorkSpaces
Amazon WorkSpaces は 5 分ごとに CloudWatch にデータを送信します。Amazon WorkSpaces の
ディメンションおよびメトリックス (p. 266) を使ってアラームを作成できます。Amazon WorkSpaces
をモニタリングする方法の詳細については、Amazon WorkSpaces Administration Guide の「Amazon
WorkSpaces のモニタリング」を参照してください。
CloudWatch へのアクセス
Abstract
Amazon CloudWatch へのアクセスに使用できるさまざまな方法を一覧表示します。
次のいずれかを使用して CloudWatch にアクセスできます。
• Amazon CloudWatch コンソール
CloudWatch コンソールの詳細については、Amazon CloudWatch コンソールにサインインする (p. 17)
を参照してください。
API Version 2010-08-01
12
Amazon CloudWatch 開発者ガイド
リージョンとエンドポイント
• AWS Console for Android and iOS
AWS Console の詳細については、「AWS Console モバイルアプリ」を参照してください。
• CloudWatch CLI
Amazon CloudWatch CLI をインストールして設定する方法については、『Amazon CloudWatch
Command Line Reference』の「Set Up the Command Line Interface」を参照してください。
• AWS CLI
AWS CLI をインストールして設定する方法については、『AWS Command Line Interface ユーザー
ガイド』の「Getting Set Up with the AWS Command Line Interface」を参照してください。
• CloudWatch API
CloudWatch API の詳細については、「Amazon CloudWatch API Reference」を参照してください。
• AWS SDK
AWS SDK については、「Tools for Amazon Web Services」を参照してください。
リージョンとエンドポイント
Abstract
CloudWatch がどのようにリージョンとエンドポイントを使って、メトリックスをモニタリングし、アラームを作
成するかを説明します。
特定の AWS リージョンのメトリックスをモニタリングし、アラームを作成します。CloudWatch のリ
クエストをリージョン固有のエンドポイントに送信します。対応する AWS のリージョンの一覧につい
ては、「Amazon Web Services General Reference」の「Regions and Endpoints」を参照してくださ
い。
CloudWatch の制限
Abstract
メトリックス、アラーム、API リクエスト、メールの通知およびログ用の CloudWatch の制限を示します。
CloudWatch には以下の制限があります。
• 各お客様につき、毎月、10 の CloudWatch メトリックス、10 のアラーム、1,000,000 の API リクエ
スト、1,000 の Amazon SNS メール通知が無料で提供されます。
• 作成できるカスタムメトリックスの数に制限はありません。
• 指定できる最大期間は 1 日(86,400 秒)です。
• 1 メトリックス当たり最大 10 のディメンションを割り当てることができます。
• AWS アカウントにつき最大 5,000 のアラームを作成できます。
• アラームごとに 5 つまでアクションを割り当てることができます。
• メトリックスのデータは 2 週間保持されます。
• PutMetricData リクエストのサイズは、HTTP GET リクエストでは 8 KB、HTTP POST リクエストで
は 40 KB に制限されています。
• 1 つの PutMetricData リクエストに、最大 20 の MetricDatum アイテムを含めることができます。1
つの MetricDatum に、単一の値または多数の値を表す StatisticSet を含めることができます。
API Version 2010-08-01
13
Amazon CloudWatch 開発者ガイド
関連 AWS サービス
CloudWatch Logs には以下の制限があります。
• 受信データは 5GB まで無料です。
• データアーカイブは 5GB まで無料です。
• AWS アカウントごとのロググループの最大数は 500 です。
• メトリックスフィルタの最大数はロググループごとに 100 です。
• 最大イベントサイズは 256KB です。
• 最大バッチサイズは 1 MB です。
• PutLogEvents リクエストの最大レートはログストリームごとに 1 秒あたり 5 リクエストです。
PutLogEvents の最大バッチサイズは 1MB です。
• GetLogEvents リクエストの最大レートは、AWS アカウントごとに 1 秒あたり 10 リクエストです。
関連 AWS サービス
Abstract
CloudWatch と組み合わせて使用できる関連 AWS サービスを一覧表示します。
CloudWatch と併せて使用されるサービスは次のとおりです。
• Auto Scaling は、ユーザー定義のポリシー、正常性状態チェック、スケジュールに基づいて、Amazon
Elastic Compute Cloud (Amazon EC2)インスタンスを自動的に開始または終了できるようにする
ウェブサービスです。Auto Scaling で CloudWatch アラームを使用して、オンデマンドで Amazon
EC2 インスタンスを拡大縮小することができます。詳細については、「Auto Scaling Developer
Guide」の「Scale Based on Demand」を参照してください。
• Amazon Simple Notification Service (Amazon SNS) は、サブスクライブしているエンドポイント
またはクライアントへのメッセージの配信または送信を、調整および管理するウェブサービスです。
アラームのしきい値に達したとき、CloudWatch の Amazon SNS を使用してメッセージを送信しま
す。詳細については、Amazon Simple Notification Service の設定 (p. 82) を参照してください。
• AWS CloudTrail は、お客様のアカウントでの Amazon CloudWatch API に対する呼び出しを監視で
きるようにするウェブサービスです。監視の対象には、AWS Management Console、コマンドライ
ンインターフェイス(CLI)、その他のサービスによって行われる呼び出しも含まれます。CloudTrail
のログ作成をオンにすると、CloudWatch は、CloudTrail の設定時に指定された Amazon S3 バケッ
トにログファイルを書き込みます。リクエストを満たすためにアクションをいくつ実行する必要が
あったかに応じて、各ログファイルには 1 個以上のレコードが含まれる可能性があります。AWS
CloudTrail の詳細については、What is AWS CloudTrail?(AWS CloudTrail User Guide)を参照して
ください。CloudWatch が CloudTrail のログファイルに書き込むデータのタイプの例については、
AWS CloudTrail での Amazon CloudWatch API 呼び出しのログ作成 (p. 181)を参照してください。
Amazon CloudWatch のリソース
Abstract
Amazon CloudWatch を使って作業する際に役立つほかのリソースを一覧表示します。
Amazon CloudWatch を利用する際に役立つ関連リソースを次の表にまとめました。
リソース
説明
Amazon CloudWatch のよくある質問
本製品に関して開発者からよく寄せられる上位の質問です。
API Version 2010-08-01
14
Amazon CloudWatch 開発者ガイド
リソース
リソース
説明
リリースノート
リリースノートには、最新リリースの概要が記載されていま
す。新機能、解決された問題、既知の問題が具体的に記載さ
れています。
AWS 開発者リソースセンター
資料、コード例、リリースノートをはじめとする、AWS
ベースの革新的なアプリケーション開発に役立つさまざまな
情報が収められた、中心的起点となるリソースセンターで
す。
AWS マネジメントコンソール
このコンソールを使用すれば、プログラミングを行うことな
く、Amazon CloudWatch とその他の AWS 製品のほとんど
の機能を実行できます。
Amazon CloudWatch Discussion Forums Amazon CloudWatch に関連する技術的な質問を提起するた
めの、開発者向けコミュニティベースフォーラムです。
AWS サポート
AWS サポートケースを作成および管理するためのハブ。
フォーラム、技術上のよくある質問、サービス状態ステータ
ス、AWS Trusted Advisor などの便利なリソースへのリンク
も含まれています。
Amazon CloudWatch 製品情報
Amazon CloudWatch に関する情報のメインのウェブページ
です。
お問い合わせ
AWS の支払、アカウント設定その他に関する連絡先です。
API Version 2010-08-01
15
Amazon CloudWatch 開発者ガイド
アマゾン ウェブ サービス(AWS)にサインアップ
準備作業
Abstract
AWS アカウントがあり、コマンドラインインターフェイスがインストールされている状態で Amazon CloudWatch
の使用を必ず開始してください。
Amazon CloudWatch を使用するには、AWS アカウントが必要になります。このアカウントは、サー
ビス(Amazon EC2 など)を利用して、CloudWatch コンソール(ポイントしてクリックするウェブ
ベースのインターフェイス)で表示できるメトリックスを生成するために必要です。加えて、AWS コ
マンドラインインターフェイス(CLI)をインストールし、設定する必要があります。
Topics
• アマゾン ウェブ サービス(AWS)にサインアップ (p. 16)
• Amazon CloudWatch コンソールにサインインする (p. 17)
• コマンドラインインターフェイスのセットアップ (p. 18)
アマゾン ウェブ サービス(AWS)にサインアッ
プ
Abstract
AWS アカウントにサインアップした状態で Amazon CloudWatch の使用を必ず開始してください。
AWS アカウントを作成すると、すべての AWS サービスに自動的にサインアップされます。料金が発
生するのは、お客様が使用したサービスの分のみです。
既に AWS アカウントをお持ちの場合は次の手順に進んでください。AWS アカウントをお持ちでない
場合は、次に説明する手順にしたがってアカウントを作成してください。
サインアップして AWS アカウントを作成するには
1.
http://aws.amazon.com/ を開き、 Sign Up をクリックします。
2.
画面上の指示に従ってください。
サインアップ手順の一環として、通話呼び出しを受け取り、電話のキーパッドを用いて PIN を入
力することが求められます。
API Version 2010-08-01
16
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch コンソールにサインインする
Amazon CloudWatch コンソールにサインインする
Abstract
Amazon CloudWatch コンソールにサインインし、モニタリングダッシュボードに移動します。
Amazon CloudWatch コンソールにサインインするには
1.
AWS マネジメントコンソール にサインインした後、 https://console.aws.amazon.com/cloudwatch/
にある CloudWatch コンソールを開きます。
モニタリングダッシュボードが開きます。ダッシュボードの外観は以下のようになっています。
2.
作成済みのアラームがない場合、[Your Alarms] セクションに [Create Alarm] ボタンが表示されま
す。CloudWatch コンソールを初めて使用する場合でも、[Your Metrics] セクションに、多数のメ
トリックスが使用中であると既にレポートされていることがあります。これは、いくつかの AWS
製品が Amazon CloudWatch に無料のメトリックスを自動的にプッシュしているためです。
必要に応じてリージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Amazon Web Services General Reference の Regions and Endpoints を
参照してください。
API Version 2010-08-01
17
Amazon CloudWatch 開発者ガイド
コマンドラインインターフェイスのセットアップ
コマンドラインインターフェイスのセットアップ
Abstract
AWS コマンドラインインターフェイスをインストールおよび設定して、セットアップします。
Amazon CloudWatch コマンドラインインターフェイス(CLI)、または AWS CLI と CloudWatch.の組
み合わせを用いることができます。ただし、どちらかの CLI を用いる前に、それらの CLI をインストー
ルして設定する必要があります。
Amazon CloudWatch CLI をインストールして設定する方法については、『Amazon CloudWatch Command
Line Reference』の「Set Up the Command Line Interface」を参照してください。
AWS CLI をインストールして設定する方法については、『AWS Command Line Interface ユーザーガ
イド』の「Getting Set Up with the AWS Command Line Interface」を参照してください。
API Version 2010-08-01
18
Amazon CloudWatch 開発者ガイド
シナリオ: CloudWatch で予想請求額をモニタリングする
Amazon CloudWatch の使用開始
Abstract
Amazon CloudWatch の使用方法について、いくつかの一般的なシナリオを説明します。
以下のシナリオを完了させて、Amazon CloudWatch の使用方法を学ぶことができます。最初のシナリ
オでは、ポイントしてクリックするウェブベースのインターフェイスになっている CloudWatch コン
ソールを使用します。このコンソールを使って、AWS の使用量を追跡し、一定の消費のしきい値を超
えたときに通知する請求アラームを作成します。2 つ目のシナリオはより高度なものです。AWS コマ
ンドラインインターフェイス(CLI)を使用して、GetStarted という仮定のアプリケーション用に 1 つ
のメトリックスをパブリッシュします。
• シナリオ: CloudWatch で予想請求額をモニタリングする (p. 19)
• シナリオ: メトリックスを CloudWatch にパブリッシュする (p. 26)
シナリオ: CloudWatch で予想請求額をモニタリン
グする
Abstract
Amazon CloudWatch アラームを用いて AWS の予想請求額をモニタリングする方法のシナリオについて説明しま
す。
このシナリオでは、アマゾン ウェブ サービス(AWS)の予想請求額をモニタリングする CloudWatch
アラームを作成します。ご使用の AMS アカウントに対する予想請求額のモニタリングを有効にする
と、予想請求額が計算されて、メトリックスデータとして CloudWatch に 1 日複数回送信されます。メ
トリックスデータは 14 日間保存されます。請求メトリックスデータは 米国東部(バージニア北部リー
ジョン) に保存され、世界全体の請求額として表されます。このデータには、使用した AWS の各サー
ビスに対する予想請求額と、AWS 全体の予想請求額が含まれています。請求額が所定のしきい値を超
過したときにメールでアラートを受け取るようにすることができます。これらのアラートは CloudWatch
によってトリガーされ、Amazon Simple Notification Service (Amazon SNS)の通知を用いて送信され
ます。CloudWatch メトリックスの操作方法の詳細については、「メトリックスの表示、グラフ化、パ
ブリッシュ (p. 30)」を参照してください。
Topics
• 手順 1: 予想請求額のモニタリングを有効にする (p. 20)
API Version 2010-08-01
19
Amazon CloudWatch 開発者ガイド
手順 1: 予想請求額のモニタリングを有効にする
• 手順 2: 請求アラームを作成する (p. 20)
• 手順 3: アラームの状態をチェックする (p. 24)
• 手順 4: 請求アラームを編集する (p. 25)
• 手順 5: 請求アラームを削除する (p. 25)
手順 1: 予想請求額のモニタリングを有効にする
予想請求額のアラームを作成する前に、AWS の予想請求額のモニタリングを有効にする必要がありま
す。有効にすると、請求アラームを作成するために使用するメトリックスデータが作成されます。請求
データの表示とアラームの作成ができるようになるまで約 15 分かかります。請求メトリックスを有効
にすると、データの収集を無効にできなくなりますが、作成したアラームは削除できます。AWS アカ
ウントの請求アラートを有効にするには、アカウント所有者(「ルートユーザー」)としてサインイン
する必要があります。
1.
https://console.aws.amazon.com/billing/home?# にある Billing and Cost Management コンソールを
開きます。
2.
所定のスペースに、ユーザー名とパスワードを入力し、[Sign in using our secure server] をクリッ
クします。
ナビゲーションペインで [Preferences] をクリックしてから、[Receive Billing Alerts] チェックボッ
クスを選択します。
3.
手順 2: 請求アラームを作成する
AWS の予想請求額のモニタリングを有効にしてから、Amazon CloudWatch コンソールで請求アラー
ムを作成できるようになります。このシナリオでは、AWS の予想請求額が 200 USD を超えたときに
メールメッセージを送信するアラームを作成します。初めて予想請求額のモニタリングを有効にする
際、請求データの表示と請求アラームの設定ができるようになるまで約 15 分かかります。
API Version 2010-08-01
20
Amazon CloudWatch 開発者ガイド
手順 2: 請求アラームを作成する
請求アラームを作成するには
1.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
2.
必要に応じて、リージョンを米国東部(バージニア)に変更します。請求メトリックスデータは
米国東部(バージニア北部リージョン) に保存され、世界全体の請求額として表されます。詳細
については、「Regions and Endpoints」を参照してください。
3.
ナビゲーションペインで [Alarms] をクリックしてから、[Alarms] ペインで [Create Alarm] をクリッ
クします。
[CloudWatch Metrics by Category] ペインの [Billing Metrics] で、[Total Estimated Charge] をクリッ
クします。
4.
API Version 2010-08-01
21
Amazon CloudWatch 開発者ガイド
手順 2: 請求アラームを作成する
5.
[Billing] > [Total Estimated Charge] で, [EstimatedCharges] メトリックスを選択して、下のペイン
に請求データをグラフ化します。
6.
[Next] をクリックし、[Alarm Threshold] ペインの [Name] フィールドに一意の分かりやすいアラー
ム名(例: 「My Estimated Charges」(予想請求額)を入力します。
API Version 2010-08-01
22
Amazon CloudWatch 開発者ガイド
手順 2: 請求アラームを作成する
7.
8.
[Description] ボックスに、アラームの説明(例: Estimated Monthly Charges)を入力します。
[Whenever charges for] の [is] ドロップダウンリストで[>=] (以上)を選択し、[USD] ボックスに
金額(例: 200)を設定します。この金額を超えるとアラームがトリガーされ、メールが送信され
ます。
Note
[Alarm Preview] の [Estimated Monthly Charges] サムネイルグラフで予想請求額を確認し
て、アラームに対して適切なしきい値を設定することができます。
9.
[Actions] で、[Notification] をクリックします。次に、[Whenever this alarm] ドロップダウンリスト
で [State is ALARM] をクリックします。
10. [Send notification to] ボックスで、既存の Amazon SNS トピックを選択します。
Amazon SNS トピックを新規作成する場合は、[Create topic] をクリックしてから、[Send notification
to] ボックスに新しい Amazon SNS トピックの名前を入力します(例: CFO)。[Email list] ボック
スには、メール通知が送られるメールアドレスを入力します(例: [email protected])。
Note
Amazon SNS トピックを新規作成すると、トピックに関連づけられたメールアカウントに
サブスクライブの確認メールが届きます。今後、アラームがトリガーされたときにメール
通知を受信するためには、サブスクライブを確認する必要があります。
API Version 2010-08-01
23
Amazon CloudWatch 開発者ガイド
手順 3: アラームの状態をチェックする
11. [Create Alarm] をクリックします。
Important
受信者のリストにメールアドレスを追加したか、トピックを新規作成した場合、アラーム
を作成した直後に、Amazon SNS から追加した各メールアドレスにサブスクライブの確認
メールが送信されます。そのメールに示されているリンクをクリックしてサブスクライブ
を確認してください。アラート通知は確認されたアドレスにのみ送信されます。
12. CloudWatch コンソールで請求アラームを表示するには、ナビゲーションペインの [Alarms] で
[Billing] をクリックします。
手順 3: アラームの状態をチェックする
作成したばかりの請求アラームの状態をチェックします。
CloudWatch コンソールを用いてアラームの状態をチェックするには
1.
2.
AWS マネジメントコンソール にサインインした後、 https://console.aws.amazon.com/cloudwatch/
にある CloudWatch コンソールを開きます。
必要に応じて、リージョンを米国東部(バージニア)に変更します。請求メトリックスデータは
米国東部(バージニア北部リージョン) に保存され、世界全体の請求額として表されます。詳細
については、「Regions and Endpoints」を参照してください。
API Version 2010-08-01
24
Amazon CloudWatch 開発者ガイド
手順 4: 請求アラームを編集する
3.
ナビゲーションペインの [Alarms] で [Billing] をクリックします。
手順 4: 請求アラームを編集する
毎月 AWS で使う金額を 400 USD に増やしたいとします。既存の請求アラームを編集して、アラーム
がトリガーされるしきい値の金額(ドル)を上げることができます。
CloudWatch コンソールを使用して請求アラームを編集するには
1.
2.
AWS マネジメントコンソール にサインインした後、 https://console.aws.amazon.com/cloudwatch/
にある CloudWatch コンソールを開きます。
必要に応じて、リージョンを米国東部(バージニア)に変更します。請求メトリックスデータは
米国東部(バージニア北部リージョン) に保存され、世界全体の請求額として表されます。詳細
については、「Regions and Endpoints」を参照してください。
3.
ナビゲーションペインの [Alarms] で [Billing] をクリックします。
4.
アラームのリストで、変更するアラームの横にあるボックスを選択し、[Modify] をクリックしま
す。
[Alarm Threshold] の [USD] ボックスで金額(例: 400)を設定します。この金額を超えるとアラー
ムがトリガーされ、メールが送信されます。続いて、[Save Changes] をクリックします。
5.
手順 5: 請求アラームを削除する
請求を有効にし、最初の請求アラームを作成し、編集したので、不要になった請求アラームを削除する
ことができます。
API Version 2010-08-01
25
Amazon CloudWatch 開発者ガイド
シナリオ: メトリックスを CloudWatch にパブリッシュす
る
CloudWatch コンソールを使用して請求アラームを削除するには
1.
AWS マネジメントコンソール にサインインした後、 https://console.aws.amazon.com/cloudwatch/
にある CloudWatch コンソールを開きます。
2.
必要に応じて、リージョンを米国東部(バージニア)に変更します。請求メトリックスデータは
米国東部(バージニア北部リージョン) に保存され、世界全体の請求額として表されます。詳細
については、「Regions and Endpoints」を参照してください。
3.
4.
ナビゲーションペインの [Alarms] で [Billing] をクリックします。
アラームのリストで、削除するアラームの横にあるボックスを選択し、[Delete] をクリックしま
す。
[Delete Alarms] ダイアログボックスで、[Yes, Delete] をクリックします。
5.
シナリオ: メトリックスを CloudWatch にパブリッ
シュする
Abstract
Amazon CloudWatch にメトリックスをパブリッシュする方法のシナリオについて説明します。
AWS CLI のインストールが完了したので、メトリックスを CloudWatch にパブリッシュすることがで
きます。このシナリオでは、AWS CLI で put-metric-data コマンドを使用し、GetStarted という仮
定のアプリケーション用に 1 つのメトリックスをパブリッシュします。次に、CloudWatch コンソール
を用いて、メトリックスの統計グラフを表示させます。CloudWatch メトリックスの操作方法の詳細に
ついては、「メトリックスの表示、グラフ化、パブリッシュ (p. 30)」を参照してください。
put-metric-data コマンドの詳細については、『AWS Command Line Interface Reference』の
「put-metric-data」を参照してください。
Topics
• 手順 1: データ構成を定義する (p. 27)
• 手順 2: CloudWatch にメトリックスを追加する (p. 27)
• 手順 3: CloudWatch から統計を取得する (p. 28)
• 手順 4: コンソールでグラフを表示する (p. 29)
API Version 2010-08-01
26
Amazon CloudWatch 開発者ガイド
手順 1: データ構成を定義する
手順 1: データ構成を定義する
このシナリオでは、アプリケーションのリクエストレイテンシーを追跡するデータポイントをパブリッ
シュします。メトリックスの名前と名前空間は、わかりやすいものを選択します。この例では、メト
リックスに RequestLatency という名前を付けて、すべてのデータポイントを GetStarted という名前
空間に入れます。
パブリッシュするデータポイントは多数あります。これらの集合が、3 時間分のレイテンシーデータを
表します。生データは、3 時間にわたって読み取られた 15 個のリクエストレイテンシー読み取り値で
構成されています。読み取り値の単位はミリ秒です。
• 1 時間目: 87、51、125、235
• 2 時間目: 121、113、189、65、89
• 3 時間目: 100、47、133、98、100、328
データを CloudWatch にパブリッシュするときは、単一のデータポイントとしてパブリッシュすること
も、複数のデータポイントを集約したセット(統計セット)としてパブリッシュすることもできます。
ここでは、1 時間目のデータポイントをそれぞれ単一データポイントとしてパブリッシュします。
時間
生データ
1
87
1
51
1
125
1
235
2 時間目と 3 時間目のデータについては、データポイントを時間ごとに集約し、統計セットとしてパブ
リッシュします。
Note
メトリックス集約の最小単位は 1 分間です。
データポイントを集約して統計セットとして CloudWatch にパブリッシュするときに、4 つの事前定義
キー(Sum、Minimum、Maximum、SampleCount)を指定できます。キーの値を次の表に示します。
時間
生データ
Sum
Minimum
Maximum
SampleCount
2
121, 113, 189, 65, 89
577
65
189
5
3
100, 47, 133, 98, 100, 328
806
47
328
6
手順 2: CloudWatch にメトリックスを追加する
データ構成の定義が完了すると、データの追加を開始できる状態になります。
Note
put-metric-data コマンドを使用するときは、過去 2 週間以内の日付範囲を使用する必要が
あります。現時点では、データポイントを削除する機能はありません。CloudWatch によって
自動的に、timestamp から 2 週間以上経過しているデータポイントが削除されます。
API Version 2010-08-01
27
Amazon CloudWatch 開発者ガイド
手順 3: CloudWatch から統計を取得する
データポイントを CloudWatch にパブリッシュするには
1.
コマンドプロンプトを開いて、次に示すコマンドを入力します。ただし、タイムスタンプは、UTC
(Universal Coordinated Time)で表した 2 時間前の時刻に置き換えてください。
aws cloudwatch put-metric-data --metric-name RequestLatency --namespace
GetStarted --timestamp 2014-02-14T20:30:00Z --value 87 --unit Milliseconds
aws cloudwatch put-metric-data --metric-name RequestLatency --namespace
GetStarted --timestamp 2014-02-14T20:30:00Z --value 51 --unit Milliseconds
aws cloudwatch put-metric-data --metric-name RequestLatency --namespace
GetStarted --timestamp 2014-02-14T20:30:00Z --value 125 --unit Milliseconds
aws cloudwatch put-metric-data --metric-name RequestLatency --namespace
GetStarted --timestamp 2014-02-14T20:30:00Z --value 235 --unit Milliseconds
2.
AWS CLI から応答が返されるのは、コマンドを実行できなかったときだけです。
2 番目のデータポイントを入力します。ただし、今回のタイムスタンプは、最初のタイムスタンプ
より 1 時間後の時刻を UTC (Universal Coordinated Time)で表して使用してください。
aws cloudwatch put-metric-data --metric-name RequestLatency --namespace
GetStarted --timestamp 2014-02-14T21:30:00Z --statistic-values Sum=577,Min
imum=65,Maximum=189,SampleCount=5 --unit Milliseconds
3.
最後のデータポイントを入力します。ただし、今回はタイムスタンプを省略します。デフォルトで
ある現在の時刻が使用されるようにするためです。
aws cloudwatch put-metric-data --metric-name RequestLatency --namespace
GetStarted --statistic-values Sum=806,Minimum=47,Maximum=328,SampleCount=6
--unit Milliseconds
メトリックスを追加した後は、統計情報を取得できます。
手順 3: CloudWatch から統計を取得する
CloudWatch へのメトリックスのパブリッシュが完了したので、そのメトリックスに基づく統計情報を
取得できます。
コマンドラインツールを使用して統計情報を取得するには
•
--start-time と --end-time は、パブリッシュした最も早いタイムスタンプが含まれるよう
に、それよりも前の時刻を指定してください。
aws cloudwatch get-metric-statistics --namespace GetStarted --metric-name
RequestLatency --statistics Average --start-time 2014-02-14T00:00:00Z --endtime 2014-02-15T00:00:00Z --period 60
AWS CLI は以下の json を返します。
{
"Datapoints": [],
"Label": "Request:Latency"
}
API Version 2010-08-01
28
Amazon CloudWatch 開発者ガイド
手順 4: コンソールでグラフを表示する
統計情報を図として見るには、CloudWatch コンソールを使用してグラフを表示します。
手順 4: コンソールでグラフを表示する
CloudWatch にメトリックスをパブリッシュし終わったら、CloudWatch コンソールを使用して統計グ
ラフを表示できます。
統計情報のグラフをコンソールで表示するには
1.
2.
3.
4.
5.
6.
7.
AWS マネジメントコンソール にサインインした後、 https://console.aws.amazon.com/cloudwatch/
にある CloudWatch コンソールを開きます。
必要に応じてリージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Regions and Endpoints を参照してください。
[Navigation] ペインで [Metrics] をクリックします。[CloudWatch Metrics by Category] が右側のペ
インに開きます。
[CloudWatch Metrics by Category] ペインの検索ボックスに「RequestLatency」と入力します。
メトリックス名「RequestLatency」の横にあるチェックボックスを選択します。メトリックスの
データのグラフが下のペインに表示されます。
グラフを変更するには、グラフのタイトルの横にある [Statistic] リストと [Period] リストから別の
値を選択します。
このメトリックスにアラームを作成する場合は、[Tools] の [Create Alarm] をクリックします。
これで、カスタムメトリックスのパブリッシュと表示が終了しました。
API Version 2010-08-01
29
Amazon CloudWatch 開発者ガイド
利用可能なメトリックスを表示する
メトリックスの表示、グラフ化、パ
ブリッシュ
Abstract
お使いのシステムのパフォーマンスに関するデータの表示、グラフ化、パブリッシュを行います。
メトリックスとは、システムのパフォーマンスに関するデータです。デフォルトでは、無料のメトリッ
クス一式が Amazon EC2 インスタンス、Amazon EBS ボリューム、Amazon RDS DB インスタンス、
Elastic Load Balancing に用意されています。また、Amazon EC2 インスタンスの詳細モニタリングを
有効にしたり、独自のアプリケーションメトリックスを追加したりすることもできます。メトリックス
データは 2 週間保持されます。これにより、最新のデータと履歴データを表示できます。Amazon
CloudWatch では、AWS マネジメントコンソールを使って、検索、グラフ化、アラーム設定するため
に、アカウントのすべてのメトリックスを読み込むことができます。これには、AWS リソースのメト
リックスとお客様が自分で用意したアプリケーションメトリックスの両方が含まれます。
CloudWatch でメトリックスをグラフ化するには、次の手順を行います。この手順が完了すると、メト
リックスに対してアラームを作成できます。詳細については、Amazon CloudWatch アラームの作
成 (p. 80) を参照してください。
Topics
• 利用可能なメトリックスを表示する (p. 30)
• 利用可能なメトリックスを検索する (p. 34)
• メトリックスを選択および選択解除する (p. 35)
• メトリックスの統計を取得する (p. 38)
• メトリックスをグラフ化する (p. 56)
• カスタムメトリックスをパブリッシュする (p. 77)
利用可能なメトリックスを表示する
Abstract
使用中の AWS サービスで利用可能なメトリックスをカテゴリー別に表示します。
API Version 2010-08-01
30
Amazon CloudWatch 開発者ガイド
AWS マネジメントコンソール
Amazon CloudWatch にメトリックスを送信するのは、使用中の AWS のサービスのみです。Amazon
CloudWatch コンソール、list-metrics コマンド、または ListMetrics API を使用して、利用可能
なメトリックスを表示できます。
AWS マネジメントコンソール
カテゴリごとに取得できるメトリックスを表示するには
カテゴリごとにメトリックスを表示できます。メトリックスはまずネームスペースごとにグループ化さ
れ、次に各ネームスペース内の種々のディメンションの組み合わせごとにグループ化されます。たとえ
ば、すべての EC2 メトリックスを表示したり、インスタンス ID、インスタンスタイプ、イメージ
(AMI)ID、または Auto Scaling グループごとにグループ化された EC2 メトリックスを表示したりで
きます。
1.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
2.
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Regions and Endpoints を参照してください。
3.
ナビゲーションペインの [Metrics] をクリックします。
4.
[CloudWatch Metrics by Category] ペインで、[EC2 Metrics] の下にある [Per-Instance Metrics] を選
択します。次に上側のペインで下方にスクロールし、メトリックスの完全なリストを確認します。
API Version 2010-08-01
31
Amazon CloudWatch 開発者ガイド
コマンドラインツール
コマンドラインツール
複数の Amazon EC2 インスタンスで利用可能なメトリックスを一覧表示するには
•
list-metrics コマンドを入力します。
Prompt>aws cloudwatch list-metrics --namespace "AWS/EC2"
AWS CLI は以下の値を返します。
{
"Metrics": [
{
"Namespace": "AWS/EC2",
"Dimensions": [
{
"Name": "InstanceId",
"Value": "i-dd8855ba"
}
],
"MetricName": "DiskReadBytes"
},
{
"Namespace": "AWS/EC2",
"Dimensions": [
{
"Name": "InstanceId",
"Value": "i-0b12b76c"
}
],
"MetricName": "CPUUtilization"
API Version 2010-08-01
32
Amazon CloudWatch 開発者ガイド
クエリ API
},
{
"Namespace": "AWS/EC2",
"Dimensions": [],
"MetricName": "NetworkIn"
},
{
"Namespace": "AWS/EC2",
"Dimensions": [
{
"Name": "InstanceId",
"Value": "i-e31dbd84"
}
],
"MetricName": "DiskReadOps"
},
{
"Namespace": "AWS/EC2",
"Dimensions": [
{
"Name": "InstanceId",
"Value": "i-13bf6574"
}
],
"MetricName": "DiskWriteBytes"
},
{
"Namespace": "AWS/EC2",
"Dimensions": [
{
"Name": "InstanceId",
"Value": "i-2840c24f"
}
],
"MetricName": "DiskReadOps"
},
{
"Namespace": "AWS/EC2",
"Dimensions": [
{
"Name": "InstanceId",
"Value": "i-9960c1fe"
}
],
"MetricName": "NetworkOut"
}
}
クエリ API
複数のインスタンスで利用可能なメトリックスを確認するには
•
ListMetrics を呼び出して、すべての有効なメトリックスの一覧を生成します。
メトリックスの一覧が返されます。メトリックスの例は次のようになります。
API Version 2010-08-01
33
Amazon CloudWatch 開発者ガイド
利用可能なメトリックスを検索する
• MetricName = CPUUtilization
• Dimensions (Name=InstanceId, Value=i-5431413d)
• Namespace = AWS/EC2
利用可能なメトリックスを検索する
Abstract
ターゲット検索用語を用いて、アカウントにある全メトリックスの中から、CloudWatch で利用可能なメトリック
スを検索します。
ターゲット検索用語を用いて、アカウントにあるすべてのメトリックス中から検索できます。名前空
間、メトリックス名、またはディメンションに一致する結果があるメトリックスが返されます。
CloudWatch で利用可能なメトリックスを検索するには
1.
2.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Regions and Endpoints を参照してください。
3.
ナビゲーションペインで [Metrics] をクリックします。
API Version 2010-08-01
34
Amazon CloudWatch 開発者ガイド
メトリックスを選択および選択解除する
4.
[CloudWatch Metrics by Category] ペインの [Search Metrics] フィールドに、検索語、メトリック
ス名、サービス名などを入力し、Enter を押します。
たとえば、[Search Metrics] フィールドに「volume」と入力すると、名前に volume があるメ
トリックスがすべて返されます。
メトリックスを選択および選択解除する
Abstract
選択されると [詳細] ペインのグラフに自動的に表示される CloudWatch のメトリックスを選択および選択解除しま
す。
CloudWatch コンソールにあるメトリックスを選択および選択解除する方法はたくさんあります。メト
リックスを選択すると、自動的にグラフ化されて [詳細] ペインに表示されます。そのため、グラフ化し
たいデータのメトリックスを選択または選択解除する方法を知ることは有用です。
メトリックスを選択または選択解除するには
1.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
2.
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Regions and Endpoints を参照してください。
API Version 2010-08-01
35
Amazon CloudWatch 開発者ガイド
メトリックスを選択および選択解除する
3.
ナビゲーションペインで [Metrics] をクリックします。
4.
[CloudWatch Metrics by Category] ペインでメトリックスのカテゴリーを選択するか、[Search
Metrics] フィールドに検索語、メトリックス名、サービス名などを入力して Enter を押します。
5.
たとえば、[Search Metrics] フィールドに「volume」と入力すると、名前に volume があるメ
トリックスがすべて返されます。
以下のいずれかを行ってください。
• 個々のメトリックスを選択または選択解除するには、結果ペインで、リソースネームとメトリッ
クスの横にあるチェックボックスを選択します。
• リスト内の全メトリックスを選択するには、結果ペインのリストの一番上で [Select All] をクリッ
クします。
全メトリックスを選択解除するには、結果ペインのメトリックスリストの一番上で [Clear] をク
リックします。
API Version 2010-08-01
36
Amazon CloudWatch 開発者ガイド
メトリックスを選択および選択解除する
• あるメトリックスを使用しているリソースをすべて一覧表示するには、結果ペインの [Metric
Name] 列でメトリックスをクリックします。
これは、同じ一つのグラフにすべてのリソースを表示したいときに役立ちます。詳細について
は、複数リソースの単一メトリックスをグラフ化する (p. 58) を参照してください。
• 1 つ以外すべてのメトリックスを選択解除するには、結果ペインにあるメトリックスのリスト
で、選択したままにするメトリックスのリソースタイプとメトリックス名の間のスペースをク
リックします。
• すべての選択したメトリックスのリストを表示するには、ナビゲーションペインの [Metrics] で、
[Selected Metrics] をクリックします。
API Version 2010-08-01
37
Amazon CloudWatch 開発者ガイド
メトリックスの統計を取得する
メトリックスの統計を取得する
Abstract
メトリックスの統計を取得する一般的なシナリオについて説明します。
この一連のシナリオでは、AWS マネジメントコンソール、get-metric-statistics コマンド、ま
たは GetMetricStatistics API を使用して、さまざまな統計を取得する方法について示します。
Note
開始時間と終了時間は過去 14 日以内である必要があります。
Topics
• 特定の EC2 インスタンスの統計を取得する (p. 38)
• インスタンス全体の統計の集約 (p. 43)
• Auto Scaling グループ別に集約された統計を取得する (p. 48)
• イメージ(AMI) ID 別に集約された統計を取得する (p. 52)
特定の EC2 インスタンスの統計を取得する
Abstract
特定の Amazon EC2 インスタンスの統計を取得する方法について説明します。
次の表に、Amazon EC2 インスタンスで利用できるデータモニタリングのタイプを示します。
モニタリングタイプ
説明
基本
5分間のデータを自動的に取得できます。無料。
API Version 2010-08-01
38
Amazon CloudWatch 開発者ガイド
特定の EC2 インスタンスの統計を取得する
モニタリングタイプ
説明
詳細
1分間のデータを取得できます。追加料金がかかります。このレベルのデー
タを取得するには、インスタンスのデータ取得を明確に有効にする必要が
あります。詳細モニタリングを有効にしたインスタンスでは、同様のイン
スタンスグループの集約データを取得することもできます。
料金の詳細については、「Amazon CloudWatch 製品ページ」を参照してく
ださい。
次のシナリオでは、AWS マネジメントコンソール、get-metric-statistics コマンド、または
GetMetricStatistics API を使用して、特定の EC2 インスタンスの最大 CPU 使用率を確認する方
法について説明します。EC2 インスタンスのモニタリングについては、「Linux インスタンス用 Amazon
EC2 ユーザーガイド」の「Monitoring Your Instances with CloudWatch」を参照してください。
Note
開始時間と終了時間は過去 14 日以内である必要があります。
この例では、EC2 インスタンス ID を持っていることを前提とします。AWS マネジメントコンソール
を使用して、アクティブな EC2 インスタンス ID を取得できます。
AWS マネジメントコンソール
特定のインスタンスの平均 CPU 使用率を表示するには
1.
2.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Regions and Endpoints を参照してください。
3.
4.
ナビゲーションペインの [Metrics] をクリックします。
[CloudWatch Metrics by Category] ペインで [EC2: Metrics] を選択します。
5.
それぞれのインスタンスで利用可能なメトリックスが上側のペインに表示されます。
特定のインスタンス ID の [CPUUtilization] が含まれる行を選択します。
単一のインスタンスの平均 CPUUtilization を表すグラフが詳細ペインに表示されます。
API Version 2010-08-01
39
Amazon CloudWatch 開発者ガイド
特定の EC2 インスタンスの統計を取得する
6.
メトリックスの [Statistic] の値(例: 平均)を変更するには、ポップアップリストから異なる値を
選択します。
7.
Period(例: 5 Minutes)を変更してより粒度の高い内容でデータを表示するには、ポップアップリ
ストから異なる値を選択します。
API Version 2010-08-01
40
Amazon CloudWatch 開発者ガイド
特定の EC2 インスタンスの統計を取得する
コマンドラインツール
EC2 インスタンスごとの CPU 使用率を取得するには
•
次のパラメータを使用して get-metric-statistics コマンドを入力します
Prompt>aws cloudwatch get-metric-statistics --metric-name CPUUtilization -start-time 2014-02-18T23:18:00 --end-time 2014-02-19T23:18:00 --period 3600
--namespace AWS/EC2 --statistics Maximum --dimensions Name=In
stanceId,Value=<your-instance-id>
AWS CLI は以下の値を返します。
{
"Datapoints": [
{
"Timestamp": "2014-02-19T00:18:00Z",
"Maximum": 0.33000000000000002,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-19T03:18:00Z",
"Maximum": 99.670000000000002,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-19T07:18:00Z",
"Maximum": 0.34000000000000002,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-19T12:18:00Z",
"Maximum": 0.34000000000000002,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-19T02:18:00Z",
"Maximum": 0.34000000000000002,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-19T01:18:00Z",
"Maximum": 0.34000000000000002,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-19T17:18:00Z",
"Maximum": 3.3900000000000001,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-19T13:18:00Z",
"Maximum": 0.33000000000000002,
"Unit": "Percent"
},
{
API Version 2010-08-01
41
Amazon CloudWatch 開発者ガイド
特定の EC2 インスタンスの統計を取得する
"Timestamp": "2014-02-18T23:18:00Z",
"Maximum": 0.67000000000000004,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-19T06:18:00Z",
"Maximum": 0.34000000000000002,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-19T11:18:00Z",
"Maximum": 0.34000000000000002,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-19T10:18:00Z",
"Maximum": 0.34000000000000002,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-19T19:18:00Z",
"Maximum": 8.0,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-19T15:18:00Z",
"Maximum": 0.34000000000000002,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-19T14:18:00Z",
"Maximum": 0.34000000000000002,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-19T16:18:00Z",
"Maximum": 0.34000000000000002,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-19T09:18:00Z",
"Maximum": 0.34000000000000002,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-19T04:18:00Z",
"Maximum": 2.0,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-19T08:18:00Z",
"Maximum": 0.68000000000000005,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-19T05:18:00Z",
"Maximum": 0.33000000000000002,
"Unit": "Percent"
API Version 2010-08-01
42
Amazon CloudWatch 開発者ガイド
インスタンス全体の統計の集約
},
{
"Timestamp": "2014-02-19T18:18:00Z",
"Maximum": 6.6699999999999999,
"Unit": "Percent"
}
],
"Label": "CPUUtilization"
}
時間間隔として 2 日が要求された場合、返される統計情報は 6 分値となります。それぞれの値は、
単一の EC2 インスタンスの最大 CPU 使用率を表しています。
クエリ API
3 日間の EC2 インスタンスについて 1 時間当たりの CPU 使用率を取得するには
•
以下のパラメータを使って GetMetricStatistics を呼び出します。
• MetricName = CPUUtilization
• Period = 3600
• Statistics リストに Maximum を含める
• Dimensions (Name=InstanceId、Value="<your-instance-id>")
• Namespace = AWS/EC2
• StartTime = 2011-01-09T23:18:00
• EndTime = 2011-01-12T23:18:00
インスタンス全体の統計の集約
Abstract
詳細モニタリングを有効にした場合にインスタンス全体の統計を集約する方法について説明します。
集計統計は、詳細モニタリングが有効になっているインスタンスで使用できます。基本モニタリングを
使用しているインスタンスは集計対象になりません。さらに、Amazon CloudWatch は複数のリージョ
ンにわたってデータを集計しません。したがって、メトリックスはリージョン間で完全に独立していま
す。複数のインスタンスにわたって集計された統計情報を取得するには、1 分間隔でデータが提供され
る詳細モニタリングを事前に有効にしておく必要があります(追加料金がかかります)。このシナリオ
は、AWS マネジメントコンソール、GetMetricStatistics API、または get-metric-statistics
コマンドで詳細モニタリングを使用して EC2 インスタンスの平均 CPU 使用率を取得する方法を紹介
します。ディメンションを指定していないため、CloudWatch は、AWS/EC2 名前空間にある全ディメン
ションの統計を返します。その他のメトリックスの統計を取得するには、Amazon CloudWatch の名前
空間、ディメンション、メトリックスのリファレンス (p. 211) を参照してください。
Important
AWS 名前空間にあるすべてのディメンションを取得するこの手法は、Amazon CloudWatch に
パブリッシュするカスタム名前空間では機能しません。カスタムネームスペースの場合、特定
のデータポイントに関連付けられた完全なディメンションセットを指定して、そのデータポイ
ントを含む統計情報を取得する必要があります。
API Version 2010-08-01
43
Amazon CloudWatch 開発者ガイド
インスタンス全体の統計の集約
AWS マネジメントコンソール
Amazon EC2 インスタンスの平均 CPU 使用率を表示するには
1.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
2.
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Regions and Endpoints を参照してください。
3.
4.
ナビゲーションペインの [Metrics] をクリックします。
[CloudWatch Metrics by Category] ペインで、[EC2 Metrics] の下にある [Across All Instances] を選
択します。
5.
すべてのインスタンスで使用できるメトリックスが上側のペインに表示されます。
上側のペインで、[CPUUtilization] が含まれている行を選択します。
EC2 インスタンスの CPUUtilization を示すグラフが詳細ペインに表示されます。
6.
メトリックスの [Statistic] の値(例: 平均)を変更するには、ポップアップリストから異なる値を
選択します。
API Version 2010-08-01
44
Amazon CloudWatch 開発者ガイド
インスタンス全体の統計の集約
7.
Period(例: 5 Minutes)を変更してより粒度の高い内容でデータを表示するには、ポップアップリ
ストから異なる値を選択します。
コマンドラインツール
複数の Amazon EC2 インスタンスの平均 CPU 使用率を取得するには
•
get-metric-statistics コマンドを次のパラメータを使用して入力します。
Prompt>aws cloudwatch get-metric-statistics --metric-name CPUUtilization -start-time 2014-02-11T23:18:00 --end-time 2014-02-12T23:18:00 --period 3600
--namespace AWS/EC2 --statistics "Average" "SampleCount"
AWS CLI は以下の値を返します。
{
"Datapoints": [
{
"SampleCount": 238.0,
"Timestamp": "2014-02-12T07:18:00Z",
"Average": 0.038235294117647062,
"Unit": "Percent"
},
{
"SampleCount": 240.0,
"Timestamp": "2014-02-12T09:18:00Z",
"Average": 0.16670833333333332,
"Unit": "Percent"
},
API Version 2010-08-01
45
Amazon CloudWatch 開発者ガイド
インスタンス全体の統計の集約
{
"SampleCount": 238.0,
"Timestamp": "2014-02-11T23:18:00Z",
"Average": 0.041596638655462197,
"Unit": "Percent"
},
{
"SampleCount": 240.0,
"Timestamp": "2014-02-12T16:18:00Z",
"Average": 0.039458333333333345,
"Unit": "Percent"
},
{
"SampleCount": 239.0,
"Timestamp": "2014-02-12T21:18:00Z",
"Average": 0.041255230125523033,
"Unit": "Percent"
},
{
"SampleCount": 240.0,
"Timestamp": "2014-02-12T01:18:00Z",
"Average": 0.044583333333333336,
"Unit": "Percent"
},
{
"SampleCount": 239.0,
"Timestamp": "2014-02-12T18:18:00Z",
"Average": 0.043054393305439344,
"Unit": "Percent"
},
{
"SampleCount": 240.0,
"Timestamp": "2014-02-12T13:18:00Z",
"Average": 0.039458333333333345,
"Unit": "Percent"
},
{
"SampleCount": 238.0,
"Timestamp": "2014-02-12T15:18:00Z",
"Average": 0.041260504201680689,
"Unit": "Percent"
},
{
"SampleCount": 240.0,
"Timestamp": "2014-02-12T19:18:00Z",
"Average": 0.037666666666666668,
"Unit": "Percent"
},
{
"SampleCount": 240.0,
"Timestamp": "2014-02-12T06:18:00Z",
"Average": 0.037541666666666675,
"Unit": "Percent"
},
{
"SampleCount": 240.0,
"Timestamp": "2014-02-12T20:18:00Z",
"Average": 0.039333333333333338,
API Version 2010-08-01
46
Amazon CloudWatch 開発者ガイド
インスタンス全体の統計の集約
"Unit": "Percent"
},
{
"SampleCount": 240.0,
"Timestamp": "2014-02-12T08:18:00Z",
"Average": 0.039250000000000014,
"Unit": "Percent"
},
{
"SampleCount": 239.0,
"Timestamp": "2014-02-12T03:18:00Z",
"Average": 0.037740585774058588,
"Unit": "Percent"
},
{
"SampleCount": 240.0,
"Timestamp": "2014-02-12T11:18:00Z",
"Average": 0.039500000000000007,
"Unit": "Percent"
},
{
"SampleCount": 238.0,
"Timestamp": "2014-02-12T02:18:00Z",
"Average": 0.039789915966386563,
"Unit": "Percent"
},
{
"SampleCount": 238.0,
"Timestamp": "2014-02-12T22:18:00Z",
"Average": 0.039705882352941181,
"Unit": "Percent"
},
{
"SampleCount": 240.0,
"Timestamp": "2014-02-12T14:18:00Z",
"Average": 0.082458333333333328,
"Unit": "Percent"
},
{
"SampleCount": 240.0,
"Timestamp": "2014-02-12T05:18:00Z",
"Average": 0.04287500000000001,
"Unit": "Percent"
},
{
"SampleCount": 240.0,
"Timestamp": "2014-02-12T17:18:00Z",
"Average": 0.039458333333333345,
"Unit": "Percent"
},
{
"SampleCount": 240.0,
"Timestamp": "2014-02-12T10:18:00Z",
"Average": 0.083416666666666667,
"Unit": "Percent"
},
{
"SampleCount": 236.0,
API Version 2010-08-01
47
Amazon CloudWatch 開発者ガイド
Auto Scaling グループ別に集約された統計を取得する
"Timestamp": "2014-02-12T00:18:00Z",
"Average": 0.036567796610169498,
"Unit": "Percent"
},
{
"SampleCount": 240.0,
"Timestamp": "2014-02-12T12:18:00Z",
"Average": 0.039541666666666676,
"Unit": "Percent"
},
{
"SampleCount": 240.0,
"Timestamp": "2014-02-12T04:18:00Z",
"Average": 0.043000000000000003,
"Unit": "Percent"
}
],
"Label": "CPUUtilization"
}
クエリ API
Amazon EC2 インスタンスの平均 CPU 使用率を取得するには
•
以下のパラメータを使用して、GetMetricStatistics を呼び出します。
• MetricName = CPUUtilization
• Statistics リストに Average を含める
• Namespace = AWS/EC2
• StartTime = 2011-01-10T23:18:00
• EndTime = 2011-01-12T23:18:00
• Period = 360
返される統計は、2 日間 6 分おきの値です。
Auto Scaling グループ別に集約された統計を取得す
る
Abstract
Auto Scaling グループ全体で統計を集約する方法について説明します。
集計統計は、詳細モニタリングが有効になっているインスタンスで使用できます。基本モニタリングを
使用しているインスタンスは集計対象になりません。さらに、Amazon CloudWatch は複数のリージョ
ンにわたってデータを集計しません。したがって、メトリックスはリージョン間で完全に独立していま
す。複数のインスタンスにわたって集計された統計情報を取得するには、1 分間隔でデータが提供され
る詳細モニタリングを事前に有効にしておく必要があります(追加料金がかかります)。
このシナリオでは、AWS マネジメントコンソール、get-metric-statistics コマンド、または
GetMetricStatistics API を DiskWriteBytes メトリックス指定で実行して、1 つの Auto Scaling グ
API Version 2010-08-01
48
Amazon CloudWatch 開発者ガイド
Auto Scaling グループ別に集約された統計を取得する
ループのディスクに書き込まれる合計バイト数を取得する方法について示します。合計は、指定された
AutoScalingGroupName の EC2 インスタンス全体で、24 時間 1 分おきで計算されます。
Note
開始時刻と終了時刻は、過去 14 日以内である必要があります。
この例では、EC2 アプリケーションは動作中であり、test-group-1 という名前の Auto Scaling グ
ループを所有していることを前提にしています。
AWS マネジメントコンソール
オートスケールされた EC2 アプリケーションの DiskWriteBytes の合計を表示するには
1.
2.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Regions and Endpoints を参照してください。
3.
4.
ナビゲーションペインの [Metrics] をクリックします。
[CloudWatch Metrics by Category] ペインで、[EC2 Metrics] の下にある [By Auto Scaling Group] を
選択します。
5.
Auto Scaling グループで使用できるメトリックスは上側のペインに表示されます。
[DiskWriteBytes] が含まれている行を選択します。
すべての EC2 インスタンスの DiskWriteBytes を示すグラフが詳細ペインに表示されます。
API Version 2010-08-01
49
Amazon CloudWatch 開発者ガイド
Auto Scaling グループ別に集約された統計を取得する
6.
メトリックスの [Statistic] の値(例: 平均)を変更するには、ポップアップリストから異なる値を
選択します。
7.
Period(例: 5 Minutes)を変更してより粒度の高い内容でデータを表示するには、ポップアップリ
ストから異なる値を選択します。
API Version 2010-08-01
50
Amazon CloudWatch 開発者ガイド
Auto Scaling グループ別に集約された統計を取得する
コマンドラインツール
オートスケールされた EC2 アプリケーションの DiskWriteBytes の合計を取得するには
•
次のパラメータで get-metric-statistics コマンドを入力します。
Prompt>aws cloudwatch get-metric-statistics --metric-name DiskWriteBytes -start-time 2014-02-16T23:18:00 --end-time 2014-02-18T23:18:00 --period 360
--namespace AWS/EC2 --statistics "Sum" "SampleCount" --dimensions
Name=AutoScalingGroupName,Value=test-group-1
AWS CLI は以下の値を返します。
{
"Datapoints": [
{
"SampleCount": 18.0,
"Timestamp": "2014-02-19T21:36:00Z",
"Sum": 0.0,
"Unit": "Bytes"
},
{
"SampleCount": 5.0,
"Timestamp": "2014-02-19T21:42:00Z",
"Sum": 0.0,
"Unit": "Bytes"
}
],
"Label": "DiskWriteBytes"
}
クエリ API
オートスケールされた EC2 アプリケーションの DiskWriteBytes の合計を取得するには
•
以下のパラメータを使用して、GetMetricStatistics を呼び出します。
• MetricName = DiskWriteBytes
• Period = 60
• Statistics リストに Sum を含める
• Unit = Bytes
• Dimensions (Name=AutoScalingGroupName, Value=test-group-1)
• Namespace = AWS/EC2
• StartTime = 2011-01-10T23:18:00
• EndTime = 2011-01-11T23:18:00
返される統計は、Auto Scaling グループ全体に書き込まれた 24 時間 1 分間隔の合計バイト数で
す。
API Version 2010-08-01
51
Amazon CloudWatch 開発者ガイド
イメージ(AMI) ID 別に集約された統計を取得する
イメージ(AMI) ID 別に集約された統計を取得する
Abstract
指定された AMI ID に従って統計を集約する方法について説明します。
集計統計は、詳細モニタリングが有効になっているインスタンスで使用できます。基本モニタリングを
使用しているインスタンスは集計対象になりません。さらに、Amazon CloudWatch は複数のリージョ
ンにわたってデータを集計しません。したがって、メトリックスはリージョン間で完全に独立していま
す。複数のインスタンスにわたって集計された統計情報を取得するには、1 分間隔でデータが提供され
る詳細モニタリングを事前に有効にしておく必要があります(追加料金がかかります)。
このシナリオでは、AWS マネジメントコンソール、get-metric-statistics コマンド、または
GetMetricStatistics API を使用して、特定のイメージ ID に対応するすべてのインスタンスの平均
CPU 使用率を明らかにします。60 秒間隔で得た値の 1 日ごとの平均となります。
Note
開始時間と終了時間は過去 14 日以内である必要があります。
このシナリオでは、EC2 インスタンスは ami-c5e40dac のイメージ ID を実行しています。
AWS マネジメントコンソール
イメージ ID の平均 CPU 使用率を表示するには
1.
2.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Regions and Endpoints を参照してください。
3.
ナビゲーションペインの [Metrics] をクリックします。
4.
[CloudWatch Metrics by Category] ペインで、[EC2 Metrics] の下にある [By Image (AMI) Id] を選択
します。
5.
イメージ ID で利用可能なメトリックスが上側のペインに表示されます。
[CPUUtilization] とイメージ ID が含まれる行を選択します。
ami-c5e40dac に基づいてすべての EC2 インスタンスの平均 CPUUtilization を示すグラフが
詳細ペインに表示されます。
API Version 2010-08-01
52
Amazon CloudWatch 開発者ガイド
イメージ(AMI) ID 別に集約された統計を取得する
6.
メトリックスの [Statistic] の値(例: 平均)を変更するには、ポップアップリストから異なる値を
選択します。
7.
Period(例: 5 Minutes)を変更してより粒度の高い内容でデータを表示するには、ポップアップリ
ストから異なる値を選択します。
API Version 2010-08-01
53
Amazon CloudWatch 開発者ガイド
イメージ(AMI) ID 別に集約された統計を取得する
コマンドラインツール
特定のイメージ ID の平均 CPU 使用率を取得するには
•
以下の例のように、get-metric-statistics コマンドを入力します。
Prompt>aws cloudwatch get-metric-statistics --metric-name CPUUtilization -start-time 2014-02-10T00:00:00 --end-time 2014-02-11T00:00:00 --period 3600
--statistics Average --namespace AWS/EC2 --dimensions Name="Im
ageId",Value=ami-3c47a355"
AWS CLI は以下の値を返します。
{
"Datapoints": [
{
"Timestamp": "2014-02-10T07:00:00Z",
"Average": 0.041000000000000009,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-10T14:00:00Z",
"Average": 0.079579831932773085,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-10T06:00:00Z",
"Average": 0.036000000000000011,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-10T13:00:00Z",
"Average": 0.037625000000000013,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-10T18:00:00Z",
"Average": 0.042750000000000003,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-10T21:00:00Z",
"Average": 0.039705882352941188,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-10T20:00:00Z",
"Average": 0.039375000000000007,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-10T02:00:00Z",
"Average": 0.041041666666666671,
"Unit": "Percent"
},
{
API Version 2010-08-01
54
Amazon CloudWatch 開発者ガイド
イメージ(AMI) ID 別に集約された統計を取得する
"Timestamp": "2014-02-10T01:00:00Z",
"Average": 0.041083333333333354,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-10T23:00:00Z",
"Average": 0.038016877637130804,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-10T15:00:00Z",
"Average": 0.037666666666666668,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-10T12:00:00Z",
"Average": 0.039291666666666676,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-10T03:00:00Z",
"Average": 0.036000000000000004,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-10T04:00:00Z",
"Average": 0.042666666666666672,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-10T19:00:00Z",
"Average": 0.038305084745762719,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-10T22:00:00Z",
"Average": 0.039291666666666676,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-10T09:00:00Z",
"Average": 0.17126050420168065,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-10T08:00:00Z",
"Average": 0.041166666666666678,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-10T11:00:00Z",
"Average": 0.082374999999999962,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-10T17:00:00Z",
"Average": 0.037625000000000013,
"Unit": "Percent"
API Version 2010-08-01
55
Amazon CloudWatch 開発者ガイド
メトリックスをグラフ化する
},
{
"Timestamp": "2014-02-10T10:00:00Z",
"Average": 0.039458333333333345,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-10T05:00:00Z",
"Average": 0.039250000000000007,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-10T00:00:00Z",
"Average": 0.037625000000000013,
"Unit": "Percent"
},
{
"Timestamp": "2014-02-10T16:00:00Z",
"Average": 0.041512605042016815,
"Unit": "Percent"
}
],
"Label": "CPUUtilization"
}
オペレーションからは、1 分値の 1 日ごとの統計情報が返されます。それぞれの値は、指定されたマシ
ンのイメージを実行する EC2 インスタンスの平均 CPU 使用率を表します。
クエリ API
特定のイメージ ID の平均 CPU 使用率を取得するには
•
以下のパラメータを使用して、GetMetricStatistics を呼び出します。
• MetricName = CPUUtilization
• Period = 60
• Statistics リストに Average を含める
• Dimensions (Name= ImageId, Value= ami-c5e40dac)
• Namespace = AWS/EC2
• StartTime = 2011-01-10T00:00:00
• EndTime = 2011-01-11T00:00:00
メトリックスをグラフ化する
Abstract
CloudWatch コンソールを使用してメトリックスデータをグラフ化する方法を説明します。
API Version 2010-08-01
56
Amazon CloudWatch 開発者ガイド
メトリックスをグラフ化する
CloudWatch コンソールを使ってほかの AWS サービスが生成したメトリックスデータをグラフ化すれ
ば、より簡単に現状を把握することができます。CloudWatch でメトリックスをグラフ化するには、次
の手順を行います。
Topics
• メトリックスをグラフ化する (p. 57)
• 複数リソースの単一メトリックスをグラフ化する (p. 58)
• 複数のメトリックスをグラフ化する (p. 61)
• グラフで日付と時刻を変更する (p. 62)
• グラフの統計を変更する (p. 63)
• グラフの期間を変更する (p. 65)
• グラフのタイトルを変更する (p. 67)
• グラフのメトリックスからアラームを作成する (p. 68)
•
•
•
•
•
•
グラフを拡大する (p. 69)
グラフの時間を遡る (p. 71)
グラフの時間を進める (p. 72)
グラフの「現在」にジャンプする (p. 73)
メトリックスの Y 軸を切り換える (p. 74)
グラフを保存する (p. 75)
メトリックスをグラフ化する
Abstract
CloudWatch でメトリックスを選択し、そのデータのグラフを作成する方法を説明します。
CloudWatch でメトリックを選択して、グラフを作成することができます。たとえば、Amazon EC2 イ
ンスタンスの CPUUtilization メトリックスを選択して、そのインスタンスの一定期間の CPU 使用率を
グラフで表示することができます。
メトリックスをグラフ化するには
1.
2.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Amazon Web Services General Reference の Regions and Endpoints を
参照してください。
3.
ナビゲーションペインで [Metrics] をクリックします。
API Version 2010-08-01
57
Amazon CloudWatch 開発者ガイド
複数リソースの単一メトリックスをグラフ化する
4.
5.
6.
7.
[CloudWatch Metrics by Category] ペインで、[Search Metrics] フィールドとカテゴリーを用いてメ
トリックス名、AWS リソース、またはその他のメタデータでメトリックスを検索します。
スクロールバーやメトリックスのリストの上にある左右矢印を使用して、メトリックスのリスト全
体のページを送ることができます。
表示するメトリックス(例: CPUUtilization)を選択します。詳細ペインにグラフが表示されます。
このグラフを保存して後でアクセスするには、詳細ペインの [Tools] で [Copy URL] をクリックし
てから、[Copy Graph URL] ダイアログボックスで URL を選択して、ご使用のブラウザにペースト
します。
複数リソースの単一メトリックスをグラフ化する
Abstract
CloudWatch のすべてのリソースにわたる一つのメトリックスをグラフ化する方法を説明します。
すべてのリソースにおける単一のメトリックスをグラフ化すれば、1 つのグラフですべてのことを確認
できます。たとえば、すべての Amazon EC2 インスタンスの CPUUtilization メトリックスを 1 つのグ
ラフ上に表示することができます。
複数のリソースにおける単一のメトリックスをグラフ化するには
1.
2.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Regions and Endpoints を参照してください。
API Version 2010-08-01
58
Amazon CloudWatch 開発者ガイド
複数リソースの単一メトリックスをグラフ化する
3.
ナビゲーションペインの [Metrics] をクリックします。
4.
[CloudWatch Metrics by Category] ペインで、メトリックスのカテゴリを選択します。たとえば、
[EC2 Metrics] の下にある [Per-Instance Metrics] を選択します。
API Version 2010-08-01
59
Amazon CloudWatch 開発者ガイド
複数リソースの単一メトリックスをグラフ化する
5.
6.
メトリックスリストの [Metric Name] 列で、メトリックスをクリックします。たとえば、
[CPUUtilization] を選択します。
メトリックスリストの先頭で、[Select All] をクリックします。
グラフには、選択したメトリックスのすべての発生に関する全データが表示されます。次の例で
は、すべての Amazon EC2 インスタンスの CPUUtilization が表示されています。
7.
このグラフを保存して後でアクセスするには、詳細ペインの [Tools] で [Copy URL] をクリックし
てから、[Copy Graph URL] ダイアログボックスで URL を選択して、ご使用のブラウザにペースト
します。
API Version 2010-08-01
60
Amazon CloudWatch 開発者ガイド
複数のメトリックスをグラフ化する
複数のメトリックスをグラフ化する
Abstract
CloudWatch の同一のグラフに、一定期間の複数のメトリックスをグラフ化する方法について説明します。
同一のグラフに、一定期間の複数のメトリックスをグラフ化できます。たとえば、ある Amazon EC2
インスタンスの CPUUtilization と DiskReadBytes をグラフ化し、同一のグラフに一緒に表示させるこ
とができます。
複数のメトリックスをグラフ化するには
1.
2.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Amazon Web Services General Reference の Regions and Endpoints を
参照してください。
3.
4.
ナビゲーションペインで [Metrics] をクリックします。
[CloudWatch Metrics by Category] ペインで、[Search Metrics] フィールドとカテゴリーを用いてメ
トリックス名、AWS リソース、またはその他のメタデータでメトリックスを検索します。
グラフ化する各メトリックスの横にあるチェックボックスを選択します。チェックボックスを選択
することで、さらにメトリックスを追加できます。選択した各チェックボックスの線グラフが表示
されます。
5.
API Version 2010-08-01
61
Amazon CloudWatch 開発者ガイド
グラフで日付と時刻を変更する
6.
7.
選択をクリアして単一メトリックスのデータを表示するには、リストにあるメトリックス名をク
リックします。
このグラフを保存して後でアクセスするには、詳細ペインの [Tools] で [Copy URL] をクリックし
てから、[Copy Graph URL] ダイアログボックスで URL を選択して、ご使用のブラウザにペースト
します。
グラフで日付と時刻を変更する
Abstract
CloudWatch で異なる時点のデータを表示するグラフで日付と時刻を変更する方法を説明します。
グラフの日付と時刻を変更して、異なる時点のデータを表示させることができます。
グラフで日付と時刻を変更するには
1.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
2.
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Amazon Web Services General Reference の Regions and Endpoints を
参照してください。
API Version 2010-08-01
62
Amazon CloudWatch 開発者ガイド
グラフの統計を変更する
3.
ナビゲーションペインで [Metrics] をクリックします。
4.
[CloudWatch Metrics by Category] ペインで、利用可能なメトリックスを表示するカテゴリーを選
択します。
5.
6.
1 つ以上のメトリックスのチェックボックスを選択します。
詳細ペインの [Time Range] セクションで、[From] フィールドと [To] フィールドを用いて新しい日
付範囲を選択します。
7.
[Update Graph] または回転矢印の更新ボタンをクリックすると、新しい日付範囲でグラフが更新さ
れます。
8.
このグラフを保存して後でアクセスするには、詳細ペインの [Tools] で [Copy URL] をクリックし
てから、[Copy Graph URL] ダイアログボックスで URL を選択して、ご使用のブラウザにペースト
します。
グラフの統計を変更する
Abstract
CloudWatch でグラフの統計を変更する方法について説明します。
API Version 2010-08-01
63
Amazon CloudWatch 開発者ガイド
グラフの統計を変更する
CloudWatch では、Average、Minimum、Maximum、Sum & Samples という複数の異なるメトリック
スの統計をサポートしています。詳細については、統計 (p. 7) を参照してください。
グラフの統計を変更するには
1.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
2.
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Amazon Web Services General Reference の Regions and Endpoints を
参照してください。
3.
4.
ナビゲーションペインで [Metrics] をクリックします。
[CloudWatch Metrics by Category] ペインで、利用可能なメトリックスを表示するカテゴリーを選
択します。
1 つ以上のメトリックスのチェックボックスを選択します。
グラフのタイトルの横にある [Statistic] ドロップダウンリストをクリックしてから、統計(例:
Maximum)を選択します。
5.
6.
新しい選択内容でグラフが更新されます。
API Version 2010-08-01
64
Amazon CloudWatch 開発者ガイド
グラフの期間を変更する
7.
このグラフを保存して後でアクセスするには、詳細ペインの [Tools] で [Copy URL] をクリックし
てから、[Copy Graph URL] ダイアログボックスで URL を選択して、ご使用のブラウザにペースト
します。
グラフの期間を変更する
Abstract
CloudWatch のグラフの期間または粒度を変更する方法を説明します。
CloudWatch は、異なる粒度でデータを表示できます。1 分の Period にして、非常に詳細な表示にする
ことができます。これは、トラブルシューティングを実行するときや、短い時間帯(たとえば、1 時
間)に注目するとき、また特定の期間に関してできるだけ精度の高いグラフを必要とする他のアクティ
ビティを実行するときに非常に役に立ちます。さらに、1 時間の Period でデータを表示し、粒度の粗
い表示にすることもできます。これは、広い時間範囲(3 日など)を表示する場合に非常に役立つとと
もに、時間の経過による傾向を知ることができます。詳細については、期間 (p. 8) を参照してくださ
い。
グラフの期間を変更するには
1.
2.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Amazon Web Services General Reference の Regions and Endpoints を
参照してください。
API Version 2010-08-01
65
Amazon CloudWatch 開発者ガイド
グラフの期間を変更する
3.
ナビゲーションペインで [Metrics] をクリックします。
4.
[CloudWatch Metrics by Category] ペインで、利用可能なメトリックスを表示するカテゴリーを選
択します。
5.
6.
1 つ以上のメトリックスのチェックボックスを選択します。
[Period] ドロップダウンリストをクリックして、新しい期間(例: 5 Minutes)を選択します。
新しい選択内容でグラフが更新されます。
7.
このグラフを保存して後でアクセスするには、詳細ペインの [Tools] で [Copy URL] をクリックし
てから、[Copy Graph URL] ダイアログボックスで URL を選択して、ご使用のブラウザにペースト
します。
API Version 2010-08-01
66
Amazon CloudWatch 開発者ガイド
グラフのタイトルを変更する
グラフのタイトルを変更する
Abstract
CloudWatch でグラフのタイトルを変更する方法について説明します。
CloudWatch は、作成したグラフにデフォルトのタイトルを付与します。タイトルを編集し、好きなタ
イトルに変更できます。
グラフのタイトルを変更するには
1.
2.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Amazon Web Services General Reference の Regions and Endpoints を
参照してください。
3.
4.
ナビゲーションペインで [Metrics] をクリックします。
[CloudWatch Metrics by Category] ペインで、利用可能なメトリックスを表示するカテゴリーを選
択します。
1 つ以上のメトリックスのチェックボックスを選択します。
詳細ペインで、タイトルをクリックして編集します。
ポップアップボックスで、新しいタイトルを入力してから、[Save] をクリックしてグラフのタイト
ルを更新します。
5.
6.
7.
API Version 2010-08-01
67
Amazon CloudWatch 開発者ガイド
グラフのメトリックスからアラームを作成する
グラフのメトリックスからアラームを作成する
Abstract
CloudWatch でメトリックスをグラフ化し、メトリックスからアラームを作成する方法を説明します。
メトリックスをグラフ化した後、グラフのメトリックスからアラームを作成できます。こうすること
で、多くのアラームフィールドの入力が自動で行われます。
グラフのメトリックスからアラームを作成するには
1.
2.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Amazon Web Services General Reference の Regions and Endpoints を
参照してください。
API Version 2010-08-01
68
Amazon CloudWatch 開発者ガイド
グラフを拡大する
3.
4.
5.
6.
ナビゲーションペインで [Metrics] をクリックします。
[CloudWatch Metrics by Category] ペインで、利用可能なメトリックスを表示するカテゴリーを選
択します。
アラームを作成するメトリックスの横にあるチェックボックスを選択します。
詳細ペインの [Tools] で、[Create Alarm] をクリックしてから、アラームフィールドにすべて入力
します。
アラームの作成方法については、Amazon CloudWatch アラームの作成 (p. 80) を参照してくださ
い。
グラフを拡大する
Abstract
CloudWatch でグラフを拡大して、より短かい期間のデータを表示する方法を説明します。
グラフの粒度を変更し、拡大することで、より短かい期間のデータを見ることができます。
グラフを拡大するには
1.
2.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Amazon Web Services General Reference の Regions and Endpoints を
参照してください。
API Version 2010-08-01
69
Amazon CloudWatch 開発者ガイド
グラフを拡大する
3.
ナビゲーションペインで [Metrics] をクリックします。
4.
[CloudWatch Metrics by Category] ペインで、利用可能なメトリックスを表示するカテゴリーを選
択します。
5.
6.
1 つ以上のメトリックスのチェックボックスを選択します。
詳細ペインで、グラフ領域をクリックし、ドラッグしてから、マウスのボタンを離します。
新しい選択内容でグラフが更新されます。
7.
このグラフを保存して後でアクセスするには、詳細ペインの [Tools] で [Copy URL] をクリックし
てから、[Copy Graph URL] ダイアログボックスで URL を選択して、ご使用のブラウザにペースト
します。
API Version 2010-08-01
70
Amazon CloudWatch 開発者ガイド
グラフの時間を遡る
グラフの時間を遡る
Abstract
CloudWatch のグラフの時間を遡る方法について説明します。
グラフの時間を遡るには
1.
2.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Amazon Web Services General Reference の Regions and Endpoints を
参照してください。
3.
4.
ナビゲーションペインで [Metrics] をクリックします。
[CloudWatch Metrics by Category] ペインで、利用可能なメトリックスを表示するカテゴリーを選
択します。
1 つ以上のメトリックスのチェックボックスを選択します。
詳細ペインで、グラフ領域の空白のスペース上にマウスをかざすと、タイムコントロール(左右の
矢印のボタン)がグラフの左端と右端に表示されます。
左矢印をクリックします。新しい選択内容でグラフが更新されます。
5.
6.
7.
API Version 2010-08-01
71
Amazon CloudWatch 開発者ガイド
グラフの時間を進める
グラフの時間を進める
Abstract
CloudWatch のグラフの時間を進める方法について説明します。
グラフの時間を進めるには
1.
2.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Amazon Web Services General Reference の Regions and Endpoints を
参照してください。
3.
4.
ナビゲーションペインで [Metrics] をクリックします。
[CloudWatch Metrics by Category] ペインで、利用可能なメトリックスを表示するカテゴリーを選
択します。
1 つ以上のメトリックスのチェックボックスを選択します。
5.
API Version 2010-08-01
72
Amazon CloudWatch 開発者ガイド
グラフの「現在」にジャンプする
6.
7.
詳細ペインで、グラフ領域の空白のスペース上にマウスをかざすと、タイムコントロール(左右の
矢印のボタン)がグラフの左端と右端に表示されます。
右矢印をクリックします。新しい選択内容でグラフが更新されます。
グラフの「現在」にジャンプする
Abstract
CloudWatch のグラフの「現在」にジャンプする方法について説明します。
グラフの「現在」にジャンプするには
1.
2.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Amazon Web Services General Reference の Regions and Endpoints を
参照してください。
3.
ナビゲーションペインで [Metrics] をクリックします。
API Version 2010-08-01
73
Amazon CloudWatch 開発者ガイド
メトリックスの Y 軸を切り換える
4.
5.
6.
7.
[CloudWatch Metrics by Category] ペインで、利用可能なメトリックスを表示するカテゴリーを選
択します。
1 つ以上のメトリックスのチェックボックスを選択します。
詳細ペインで、グラフ領域の空白のスペース上にマウスをかざすと、タイムコントロール(左右の
矢印のボタン)がグラフの左端と右端に表示されます。
縦線の付いた右矢印をクリックします。新しい選択内容でグラフが更新されます。
メトリックスの Y 軸を切り換える
Abstract
CloudWatch で、メトリックスの Y 軸を切り換えて、単一のグラフに複数のメトリックスを表示する方法を説明し
ます。
2 本の異なる Y 軸を用いて単一のグラフに複数のメトリックスを表示できます。これは特に単位の異な
るメトリックスや、値の範囲が大きく異なるメトリックスに対して有用です。
メトリックスの Y 軸を切り換えるには
1.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
2.
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Amazon Web Services General Reference の Regions and Endpoints を
参照してください。
API Version 2010-08-01
74
Amazon CloudWatch 開発者ガイド
グラフを保存する
3.
ナビゲーションペインで [Metrics] をクリックします。
4.
[CloudWatch Metrics by Category] ペインで、利用可能なメトリックスを表示するカテゴリーを選
択します。
5.
6.
1 つ以上のメトリックスのチェックボックスを選択します。
詳細ペインで、グラフの線上またはメトリックスの説明文の上にマウスを移動すると、ホバーボッ
クスが表示されます。
ホバーボックスの [switch] リンクをクリックします。メトリックスが反対側の軸に切り換わりま
す。
7.
グラフを保存する
Abstract
CloudWatch でグラフを保存して後でアクセスする方法について説明します。
グラフを保存またはブックマークして、後でアクセスすることができます。
API Version 2010-08-01
75
Amazon CloudWatch 開発者ガイド
グラフを保存する
グラフを保存するには
1.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
2.
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Amazon Web Services General Reference の Regions and Endpoints を
参照してください。
3.
4.
ナビゲーションペインで [Metrics] をクリックします。
[CloudWatch Metrics by Category] ペインで、[Search Metrics] フィールドとカテゴリーを用いてメ
トリックス名、AWS リソース、またはその他のメタデータでメトリックスを検索します。
スクロールバーやメトリックスのリストの上にある左右矢印を使用して、メトリックスのリスト全
体のページを送ることができます。
表示するメトリックスを選択します。以下の例では、Amazon EC2 インスタンスの CPUUtilization
メトリックスのグラフが詳細ペインに表示されています。
5.
6.
7.
8.
詳細ペインの [Tools] で、[Copy URL] をクリックします。
[Copy Graph URL] ダイアログボックスで、URL を選択してブラウザにペーストします。
ブラウザでページをブックマークして、後でアクセスします。
API Version 2010-08-01
76
Amazon CloudWatch 開発者ガイド
カスタムメトリックスをパブリッシュする
カスタムメトリックスをパブリッシュする
Abstract
CloudWatch で独自のカスタムメトリックスをパブリッシュする方法を説明します。
put-metric-data コマンド(またはそのクエリ API と同等の PutMetricData)を使用して CloudWatch
に自分のメトリックスをパブリッシュすることができます。詳細については、AWS Command Line
Interface Reference の「put-metric-data」を参照してください。AWS マネジメントコンソールでパブ
リッシュしたメトリックスの統計グラフを表示できます。
新しいメトリックス名で put-metric-data を呼び出すと、CloudWatch が新しいメトリックスを作成
します。そうでない場合、CloudWatch は指定された既存のメトリックスとデータを関連付けます。
Note
put-metric-data コマンドで新しいメトリックスを作成した場合、get-metric-statistics
コマンドを用いてその新規メトリックスの統計を取得できるようになるまで最大 2 分かかりま
す。ただし、list-metrics コマンドを用いて取得したメトリックスのリストに新規メトリッ
クスが表示されるまで最大 15 分かかることがあります。
CloudWatch は、一連のデータポイントとしてメトリックスに関するデータを格納します。各データポ
イントには関連するタイムスタンプがあります。put-metric-data への各呼び出しにより、1 つ以上
のデータポイントをパブリッシュできます。さらに、統計セットという集約されたデータポイント一式
をパブリッシュすることもできます。
Topics
• 単一データポイントをパブリッシュする (p. 77)
• 統計セットをパブリッシュする (p. 78)
• 値ゼロ(0)をパブリッシュする (p. 78)
単一データポイントをパブリッシュする
新規または既存のメトリックスに単一のデータポイントをパブリッシュするには、1 つの値とタイムス
タンプで put-metric-data を呼び出します。たとえば、次のアクションはそれぞれ 1 つのデータポ
イントをパブリッシュしています。
aws cloudwatch put-metric-data --metric-name PageViewCount --namespace "MySer
vice" --value 2 --timestamp 2014-02-14T12:00:00.000Z
aws cloudwatch put-metric-data --metric-name PageViewCount --namespace "MySer
vice" --value 4 --timestamp 2014-02-14T12:00:01.000Z
aws cloudwatch put-metric-data --metric-name PageViewCount --namespace "MySer
vice" --value 5 --timestamp 2014-02-14T12:00:02.000Z
Note
put-metric-data コマンドでパブリッシュできるのは、呼び出し 1 回ごとに 1 データポイン
トのみです。この例を実行する場合は、過去 2 週間以内のタイムスタンプを指定してくださ
い。
粒度が 1 秒の 1,000 分の 1 のタイムスタンプでデータポイントをパブリッシュできますが、CloudWatch
は、データを最小粒度の 1 分に集約します。CloudWatch は 1 分の期間ごとに受け取った値の平均(す
べての項目の合計を項目数で割った値)と、同じ期間内のサンプル数、最大値、最小値を記録します。
API Version 2010-08-01
77
Amazon CloudWatch 開発者ガイド
統計セットをパブリッシュする
たとえば、前の例の PageViewCount メトリックスには、3 つのデータポイントで、数秒違いのタイム
スタンプがあります。3 つのデータポイントはタイムスタンプがすべて 1 分の期間内にあるため、
CloudWatch はそれらを集約します。
CloudWatch は、データポイントを集約する際、1 分の境界を使用します。たとえば、
2014-02-20T12:00:00.000Z で始まり 2014-02-20T12:01:00.000Z で終わる 1 分の期間内に 3
つのデータポイントがすべて収まるため、CloudWatch は前の例のデータポイントを集約します。
パブリッシュしたデータポイントを基に、get-metric-statistics コマンドを用いて統計を取得で
きます。
aws cloudwatch get-metric-statistics --metric-name PageViewCount --namespace
"MyService" --statistics "Sum" "Maximum" "Minimum" "Average" "SampleCount" -period 60 --start-time 2014-02-20T12:00:00.000Z --end-time 2014-0220T12:05:00.000Z --output json
CloudWatch は以下を返します。
{
"Datapoints": [
{
"SampleCount": 3.0,
"Timestamp": "2014-02-20T12:00:00Z",
"Average": 3.6666666666666665,
"Maximum": 5.0,
"Minimum": 2.0,
"Sum": 11.0,
"Unit": "None"
}
],
"Label": "PageViewCount"
}
統計セットをパブリッシュする
さらに、CloudWatch にパブリッシュする前にデータを集約することもできます。各分に複数のデータ
ポイントがある場合、データを集約して put-metric-data への呼び出し回数を最小化できます。た
とえば、互いに 3 秒以内の位置にある 3 つのデータポイントに対して put-metric-data を複数回呼
び出す代わりに、1 回の呼び出しでパブリッシュできる統計セットにデータを集約できます。
aws cloudwatch put-metric-data --metric-name PageViewCount --namespace "MySer
vice" --statistic-value Sum=11,Minimum=2,Maximum=5,SampleCount=3 --timestamp
2014-02-14T12:00:00.000Z
値ゼロ(0)をパブリッシュする
データが散発的で、関連データがない期間がある場合、その期間に対して値ゼロ 0 をパブリッシュする
か、全く値なしにするかを選択できます。アプリケーションの状態をモニタリングするために
PutMetricData を周期的に呼び出す場合、値なしにするのではなく、値ゼロ(0)をパブリッシュす
ることができます。たとえば、アプリケーションが 5 分ごとにメトリックスをパブリッシュできない場
合、CloudWatch アラームを設定できます。そのようなアプリケーションに関連データがない期間では
ゼロ(0)をパブリッシュさせることができます。
API Version 2010-08-01
78
Amazon CloudWatch 開発者ガイド
値ゼロ(0)をパブリッシュする
また、データポイントの総数を追跡する場合、または最小値や平均値などの統計に値 0 のデータポイン
トを含める場合も 0 をパブリッシュすることがあります。
API Version 2010-08-01
79
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch アラームの作成
Abstract
アラームの状態が変わったときに Amazon SNS メッセージを送信する Amazon CloudWatch アラームを作成しま
す。
アラームの状態が変わったときに Amazon Simple Notification Service メッセージを送信する CloudWatch
アラームを作成できます。アラームは、指定期間にわたって単一のメトリックスを監視し、その値と複
数期間に対するしきい値との比較結果に基づいて 1 つ以上のアクションを実行します。アクションと
は、Amazon Simple Notification Service トピックまたは Auto Scaling ポリシーに送信される通知のこ
とです。アラームは、持続している状態変化に対してのみアクションを呼び出します。CloudWatch ア
ラームは、単に特定の状態にあるというだけでアクションを呼び出すわけではありません。状態が変わ
り、それが指定した数の期間にわたって持続している必要があります。
状態変化に伴いアラームによって呼び出されるアクションの内容は、そのアラームに関連付けられたア
クションの種類によって異なります。Auto Scaling ポリシーの通知の場合、アラームは、状態が変わっ
てその状態が持続している期間ごとにアクションを呼び出します。Amazon Simple Notification Service
通知では、アクションが呼び出されるのは 1 回だけです。
アラームには次の 3 つの状態があります。
• OK – メトリックスの値が、定義されたしきい値を下回っている。
• ALARM – メトリックスの値が、定義されたしきい値を上回っている。
• INSUFFICIENT_DATA – アラームが開始直後であるか、メトリックスが利用できないか、データが不
足していていアラームの状態を判定できない。
下の図では、アラームのしきい値は 3 に、状態変化の最小持続期間は 3 に設定されています。つまり、
3 期間連続でしきい値を上回っている場合のみ、アラームはアクションを呼び出します。この図では、
第 3 期間から第 5 期間にかけて発生しており、アラームの状態は ALARM になっています。第 6 期間
で、値はしきい値を下回り、状態は OK に戻ります。その後、第 9 期間で、しきい値を再び上回ってい
ますが、必要な 3 期間には達していません。そのため、アラームの状態は OK のままです。
API Version 2010-08-01
80
Amazon CloudWatch 開発者ガイド
Note
CloudWatch は、指定したアクションのテストや検証は行いません。また、存在しないアクショ
ンの呼び出しから生じる Auto Scaling や SNS のエラーも検出しません。アクションが存在し
ていることを確認してください。
アラームでよく使用する機能
• AWS アカウントにつき最大 5,000 のアラームを作成できます。アラームを作成または更新するには、
PutMetricAlarm API 機能(mon-put-metric-alarm コマンド)を使用します。
• DescribeAlarms API(mon-describe-alarms コマンド)を用いて、現在設定しているアラーム
のいずれかまたはすべてを一覧表示したり、特定の状態にあるアラームを一覧表示したりできます。
さらに、時間レンジで一覧をフィルタできます。
• アラームを無効にするには DisableAlarmActions API(mon-disable-alarm-actions コマン
ド)を、有効にするには EnableAlarmActions API(mon-enable-alarm-actions コマンド)を
使用します。
• アラームの動作をテストするにはSetAlarmState API(mon-set-alarm-state コマンド)を使用
して任意の状態に設定します。この一時的な状態変更が持続するのは、次のアラーム比較が行われる
ときまでです。
• カスタムメトリックスを作成する前に、PutMetricAlarm API 関数(mon-put-metric-alarm コ
マンド)を使用してアラームを作成できます。アラームを有効にするには、メトリックス名前空間お
よびメトリックス名に加えて、カスタムメトリックスのディメンションをすべてアラームの定義に含
める必要があります。
API Version 2010-08-01
81
Amazon CloudWatch 開発者ガイド
Amazon Simple Notification Service の設定
• アラームの履歴を見るには DescribeAlarmHistory API(mon-describe-alarm-history コマ
ンド)を使用します。CloudWatch は、アラーム履歴を 2 週間保存します。各状態変化に、固有のタ
イムスタンプが付きます。まれに、1 つの状態変化に対して複数の通知が履歴に残されることがあり
ます。タイムスタンプによって、固有の状態変化を確認できます。
Note
特定の状況では、AWS リソースが CloudWatch にメトリックスデータを送信していないこと
があります。
たとえば、Amazon EBS は、Amazon EC2 インスタンスに追加されていない利用可能なボリュー
ムに関するメトリックスデータを送信しないことがあります。これは、そのボリュームでモニ
タリングするメトリックスの動作がないためです。そのようなメトリックスにアラームを設定
すると、状態が Insufficient Data に変わることがあります。これは、単にリソースが動作して
いない状態を示すもので、必ずしも問題があることを意味しているわけではありません。
Topics
• Amazon Simple Notification Service の設定 (p. 82)
• アラームの作成 (p. 88)
• CPU 使用率アラームに基づいてメールを送信する (p. 89)
• ロードバランサーアラームに基づいてメールを送信する (p. 92)
• ストレージスループットアラームに基づいてメールを送信する (p. 95)
• インスタンスを停止、終了、または復旧するアラームを作成する (p. 98)
• Amazon CloudWatch で予想請求額をモニタリングする (p. 124)
Amazon Simple Notification Service の設定
Abstract
CloudWatch アラームの状態が変わったときにメールが送信されるように Amazon Simple Notification Service を設
定します。
Amazon CloudWatch は、Amazon Simple Notification Service (Amazon SNS)を使用してメールを送
信します。このセクションでは、Amazon Simple Notification Service トピックを作成する方法と、ト
ピックをサブスクライブする方法について説明します。CloudWatch アラームを作成する際、この
Amazon SNS トピックを追加して、アラームの状態が変わったときにメールの通知が送信されるよう
に設定できます。Amazon Simple Notification Service の詳細については、「Amazon Simple Notification
Service 入門ガイド」を参照してください。
Note
CloudWatch アラームを AWS マネジメントコンソール で作成する場合はこの手順を省略でき
ます。[Create Alarm Wizard] の [Configure Actions] で Amazon Simple Notification Service ト
ピックを作成できるからです。
Topics
• AWS マネジメントコンソール (p. 83)
• コマンドラインツール (p. 87)
API Version 2010-08-01
82
Amazon CloudWatch 開発者ガイド
AWS マネジメントコンソール
AWS マネジメントコンソール
AWS マネジメントコンソールで Amazon Simple Notification Service トピックを設定する場合、まずト
ピックを作成し、それからトピックをサブスクライブします。次に、トピックに直接メッセージをパブ
リッシュして、設定が正しいことを確認します。
Amazon Simple Notification Service トピックを作成するには
1.
https://console.aws.amazon.com/sns/にある Amazon SNS コンソールを開きます。
2.
必要に応じてリージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Regions and Endpoints を参照してください。
3.
[Getting Started] で、[Create New Topic] をクリックします。
[Create New Topic] ダイアログが開きます。
4.
5.
トピック名「MyTopic」を [Topic Name] フィールドに入力します。
[Create Topic] をクリックします。
新しいトピックが [Topic Details] ページに表示されます。
API Version 2010-08-01
83
Amazon CloudWatch 開発者ガイド
AWS マネジメントコンソール
6.
次のタスクで使うため、[Topic ARN] をコピーします。
Amazon Simple Notification Service トピックをサブスクライブするには
1.
https://console.aws.amazon.com/sns/にある Amazon SNS コンソールを開きます。
2.
必要に応じてリージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Regions and Endpoints を参照してください。
3.
ナビゲーションペインで [My Subscriptions] をクリックします。
4.
[My Subscriptions] ページが開きます。
[Create New Subscription] をクリックします。
[Subscribe] ダイアログボックスが開きます。
API Version 2010-08-01
84
Amazon CloudWatch 開発者ガイド
AWS マネジメントコンソール
5.
[Topic ARN] フィールドで、前のタスクで作成したトピック ARN(例:
arn:aws:sns:us-east-1:054794666394:MyTopic)をペーストします。
6.
7.
[Protocol] ドロップダウンリストで [Email] を選択します。
[Endpoint] フィールドに通知の受取先として使用するメールアドレスを入力し、[Subscribe] をク
リックします。
Important
Entourage ユーザーの場合: Entourage は確認用 URL を削除してしまいます。別のメール
アプリケーションで利用できるメールアドレスを入力してください。
8.
メールアプリケーションに移動して AWS Notification から届いたメッセージを開き、リンクをク
リックしてサブスクライブを確認します。
ウェブブラウザに Amazon Simple Notification Service の確認画面が表示されます。
Amazon Simple Notification Service トピックにパブリッシュするには
1.
https://console.aws.amazon.com/sns/にある Amazon SNS コンソールを開きます。
2.
必要に応じてリージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Regions and Endpoints を参照してください。
API Version 2010-08-01
85
Amazon CloudWatch 開発者ガイド
AWS マネジメントコンソール
3.
ナビゲーションペインの [My Topics] で、パブリッシュするトピックをクリックします。
4.
[Topic Details] ページが開きます。
[Publish to Topic] をクリックします。
[Publish] ダイアログボックスが開きます。
5.
[Subject] フィールドにメッセージの件名を入力し、[Message] フィールドに簡単なメッセージを入
力します。
6.
[Publish Message] をクリックします。
確認のダイアログボックスが開きます。
7.
8.
[Close] をクリックします。
メールをチェックして、トピックからメッセージを受信したことを確認します。
API Version 2010-08-01
86
Amazon CloudWatch 開発者ガイド
コマンドラインツール
コマンドラインツール
このシナリオでは、AWS CLI を用いて Amazon Simple Notification Service トピックを作成する方法
と、トピックに直接メッセージをパブリッシュして設定が正しいことを確認する方法を示します。AWS
CLI をインストールして設定する方法については、『AWS Command Line Interface ユーザーガイド』
の「Getting Set Up with the AWS Command Line Interface」を参照してください。
Amazon Simple Notification Service トピックを設定するには
1.
create-topic コマンドを用いてトピックを作成します。戻り値としてトピックのリソースネー
ムを受け取ります。
Prompt>aws sns create-topic --name
MyTopic
Amazon Simple Notification Service は次のトピック ARN を返します。
{
"TopicArn": "arn:aws:sns:us-east-1:111122223333:MyTopic"
}
2.
subscribe コマンドを用いて、自分のメールアドレスをトピックにサブスクライブします。サブ
スクライブのリクエストが成功すると、確認メールが届きます。
Prompt>aws sns subscribe --topic-arn arn:aws:sns:us-east1:111122223333:MyTopic --protocol email --notification-endpoint <your-emailaddress>
Amazon Simple Notification Service は以下を返します。
{
"SubscriptionArn": "pending confirmation"
}
3.
4.
メッセージ本文にある確認リンクをクリックすることで Amazon Simple Notification Service から
メールを受信する意思を表明したら、サブスクライブの処理は完了です。
list-subscriptions-by-topic コマンドを用いて、サブスクリプションをチェックします。
Prompt>aws sns list-subscriptions-by-topic --topic-arn arn:aws:sns:us-east1:111122223333:MyTopic
Amazon Simple Notification Service は以下を返します。
{
"Subscriptions": [
{
"Owner": "111122223333",
"Endpoint": "[email protected]",
"Protocol": "email",
"TopicArn": "arn:aws:sns:us-east-1:111122223333:MyTopic",
"SubscriptionArn": "arn:aws:sns:us-east-1:111122223333:MyTop
ic:64886986-bf10-48fb-a2f1-d
ab033aa67a3"
API Version 2010-08-01
87
Amazon CloudWatch 開発者ガイド
アラームの作成
}
]
}
5.
publish コマンドを用いてトピックに直接メッセージをパブリッシュして、トピックが正しく設
定されていることを確認します。
Prompt>aws sns publish --message "Verification" --topic arn:aws:sns:us-east1:111122223333:MyTopic
Amazon Simple Notification Service は以下を返します。
{
"MessageId": "42f189a0-3094-5cf6-8fd7-c2dde61a4d7d"
}
6.
メールをチェックして、トピックからメッセージを受信したことを確認します。
アラームの作成
Abstract
CloudWatch コンソールを用いて Amazon CloudWatch アラームを作成します。
Amazon CloudWatch コンソールの [Alarms] リストからアラームを作成できます。
アラームを作成するには
1.
2.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Amazon Web Services General Reference の Regions and Endpoints を
参照してください。
3.
ナビゲーションペインの [Alarms] をクリックします。
4.
[Create Alarm] をクリックし、[CloudWatch Metrics by Category] ペインでメトリックスのカテゴ
リ(例: [EC2 Metrics])を選択します。
メトリックス(例えば、CPUUtilization)を選択し、[Next] をクリックします。
5.
API Version 2010-08-01
88
Amazon CloudWatch 開発者ガイド
CPU 使用率アラームに基づいてメールを送信する
6.
[Alarm Threshold] のすべてのフィールドに入力します。続いて [Actions] で、アラームがトリガー
されたときに実行されるアクションの種類を選択します。
アラームをトリガーする特定のメトリックスを選択し、それらのメトリックスのしきい値を指定す
ることができます。また、メトリックスが設定したしきい値を超えたときに状態が変わるよう、ア
ラームを設定することができます。メールを送信するアラームを作成する方法の例については、
Amazon CloudWatch アラームの作成 (p. 80) を参照してください。
7.
[Create Alarm] をクリックします。
CPU 使用率アラームに基づいてメールを送信する
Abstract
CPU 使用率に基づいてメールを送信する Amazon CloudWatch アラームの作成方法を説明します。
このシナリオでは、AWS マネジメントコンソールまたはコマンドラインツールを使用して、アラーム
の状態が OK から ALARM に変わったときに Amazon Simple Notification Service メールメッセージが
送信される Amazon CloudWatch アラームの作成方法を示します。
このシナリオでは、EC2 インスタンスの平均 CPU 使用率が、5 分の期間を 2 回連続で 70% を超えた
場合に、アラームの状態が ALARM に変わるように設定します。
Topics
• AWS マネジメントコンソール (p. 90)
• コマンドラインツール (p. 92)
API Version 2010-08-01
89
Amazon CloudWatch 開発者ガイド
AWS マネジメントコンソール
AWS マネジメントコンソール
CPU 使用率に基づいて E メールを送信するアラームを作成するには
1.
2.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Regions and Endpoints を参照してください。
3.
4.
ナビゲーションペインの [Alarms] をクリックします。
[Create Alarm] をクリックし、[CloudWatch Metrics by Category] ペインでメトリックスのカテゴ
リ(例: [EC2 Metrics])を選択します。
メトリックスのリストで、特定のインスタンス ID の [CPUUtilization] が含まれる行を選択します。
5.
単一のインスタンスの平均 CPUUtilization を表すグラフが下側のペインに表示されます。
API Version 2010-08-01
90
Amazon CloudWatch 開発者ガイド
AWS マネジメントコンソール
6.
7.
[Statistic] ドロップダウンリストから [Average] を選択します。
[Period] ドロップダウンリストから、期間(5 など)を選択します。
8.
[Next] をクリックし、[Alarm Threshold] の [Name] フィールドに一意のアラーム名(例:
「myHighCpuAlarm」)を入力します。
9.
[Description] フィールドには、アラームの説明(例: 「CPU 70 」)を入力し
ます。
10. [is] ドロップダウンリストで [>] を選択します。
11. [is] ドロップダウンリストの隣にあるボックスに「70」を入力し、[for] フィールドに「10」を入力
します。
[Alarm Preview] の下に、しきい値が図で表示されます。
12. [Actions] の [Whenever this alarm] ドロップダウンリストで、[State is ALARM] を選択します。
13. [Send notification to] ドロップダウンリストにある既存の Amazon SNS トピックを選択するか、新
しい Amazon SNS トピックを作成します。
14. 新しい Amazon SNS トピックを作成するには、[New list] を選択します。
[Send notification to] フィールドに、新しい Amazon SNS トピックの名前(例:
「myHighCpuAlarm」)を入力し、[Email list] フィールドに、アラームが ALARM 状態に変化した
ときに通知を受ける E メールアドレスをカンマで区切って入力します。
15. ナビゲーションペインで [Create Alarm] をクリックして、アラーム作成処理が終了します。
API Version 2010-08-01
91
Amazon CloudWatch 開発者ガイド
コマンドラインツール
コマンドラインツール
CPU 使用率が 70% を超えたときに Amazon Simple Notification Service メールメッセージを送
信するには
1.
2.
Amazon Simple Notification Service トピックを設定するか、使用するトピックのトピックリソース
ネームを見つけます。Amazon Simple Notification Service トピックの設定のヘルプについては、
Amazon Simple Notification Service の設定 (p. 82) を参照してください。
put-metric-alarm コマンドを使用してアラームを作成します。次に示す例の値を使用します。
ただし、InstanceID と alarm-actions の値はご自分の値に置き換えます。
Prompt>aws cloudwatch put-metric-alarm --alarm-name cpu-mon --alarm-descrip
tion "Alarm when CPU exceeds 70%" --metric-name CPUUtilization --namespace
AWS/EC2 --statistic Average --period 300 --threshold 70 --comparison-oper
ator GreaterThanThreshold --dimensions Name=InstanceId,Value=i-12345678
--evaluation-periods 2 --alarm-actions arn:aws:sns:us-east1:111122223333:MyTopic --unit Percent
3.
コマンドが成功した場合、AWS CLI はコマンドプロンプトに戻ります。
set-alarm-state コマンドを使用してアラームの状態を強制的に変化させ、アラームをテストし
ます。
a.
アラームの状態を INSUFFICIENT_DATA から OK に変更します。
Prompt>aws cloudwatch set-alarm-state --alarm-name cpu-mon --statereason "initializing" --state-value OK
b.
コマンドが成功した場合、AWS CLI はコマンドプロンプトに戻ります。
アラームの状態を OK から ALARM に変更します。
Prompt>aws cloudwatch set-alarm-state --alarm-name cpu-mon --statereason "initializing" --state-value ALARM
c.
コマンドが成功した場合、AWS CLI はコマンドプロンプトに戻ります。
メールを受信したことを確認します。
ロードバランサーアラームに基づいてメールを送
信する
Abstract
レイテンシーが大きくなった場合にメールを送信するロードバランサーアラームの作成方法について説明します。
このシナリオでは、Amazon CloudWatch コンソールまたは AWS コマンドラインインターフェイス
(CLI)を使用して Amazon Simple Notification Service 通知をセットアップし、さらに 100 ms を超え
るロードバランサーレイテンシーをモニタリングするアラームを設定する方法を説明します。
Topics
• AWS マネジメントコンソール (p. 93)
API Version 2010-08-01
92
Amazon CloudWatch 開発者ガイド
AWS マネジメントコンソール
• コマンドラインツール (p. 95)
AWS マネジメントコンソール
E メールを送信するロードバランサーアラームを作成するには
1.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
2.
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Regions and Endpoints を参照してください。
3.
4.
ナビゲーションペインの [Alarms] をクリックします。
[Create Alarm] をクリックし、[CloudWatch Metrics by Category] ペインでメトリックのカテゴリ
(例: [ELB Metrics])を選択します。
メトリックスのリストで、特定のロードバランサーの [Latency] が含まれる行を選択します。
5.
単一のロードバランサーの平均 Latency を表すグラフが下側のペインに表示されます。
API Version 2010-08-01
93
Amazon CloudWatch 開発者ガイド
AWS マネジメントコンソール
6.
7.
8.
[Statistic] ドロップダウンリストから [Average] を選択します。
[Period] ドロップダウンリストから [1 Minute] を選択します。
[Next] をクリックし、[Alarm Threshold] の [Name] フィールドに一意のアラーム名(例:
「myHighCpuAlarm」)を入力します。
9.
[Description] フィールドには、アラームの説明(例: 「Latency 100ms 」)を
入力します。
10. [is] ドロップダウンリストで [>] を選択します。
11. [is] ドロップダウンリストの隣にあるボックスに「0.1」を入力し、[for] フィールドに「3」を入力
します。
[Alarm Preview] の下に、しきい値が図で表示されます。
12. [Actions] の [Whenever this alarm] ドロップダウンリストで、[State is ALARM] を選択します。
13. [Send notification to] ドロップダウンリストにある既存の Amazon SNS トピックを選択するか、新
しい Amazon SNS トピックを作成します。
14. 新しい Amazon SNS トピックを作成するには、[New list] を選択します。
[Send notification to] フィールドに、新しい Amazon SNS トピックの名前(例:
「myHighCpuAlarm」)を入力し、[Email list] フィールドに、アラームが ALARM 状態に変化した
ときに通知を受ける E メールアドレスをカンマで区切って入力します。
15. ナビゲーションペインで [Create Alarm] をクリックして、アラーム作成処理が終了します。
API Version 2010-08-01
94
Amazon CloudWatch 開発者ガイド
コマンドラインツール
コマンドラインツール
ロードバランサーのレイテンシーが 100 ミリ秒を超えたときに Amazon Simple Notification
Service メールメッセージを送信するには
1.
2.
Amazon Simple Notification Service トピックを作成します。Amazon SNS トピックの作成につい
ては、Amazon Simple Notification Service の設定 (p. 82) の説明を参照してください。
アラームを作成します。
Prompt>aws cloudwatch put-metric-alarm --alarm-name lb-mon --alarm-description
"Alarm when Latency exceeds 100ms" --metric-name Latency --namespace AWS/ELB
--statistic Average --period 60 --threshold 100 --comparison-operator
GreaterThanThreshold --dimensions Name=LoadBalancerName,Value=my-server -evaluation-periods 3 --alarm-actions arn:aws:sns:us-east-1:1234567890:mytopic --unit Milliseconds
3.
コマンドが成功した場合、AWS CLI はコマンドプロンプトに戻ります。
アラームをテストします。
• アラームの状態を強制的に ALARM に変化させます。
Prompt>aws cloudwatch set-alarm-state --alarm-name lb-mon --state-reason
"initializing" --state OK
Prompt>aws cloudwatch set-alarm-state --alarm-name lb-mon --state-reason
"initializing" --state ALARM
コマンドが成功した場合、AWS CLI はコマンドプロンプトに戻ります。
• メールを受信したことを確認します。
ストレージスループットアラームに基づいてメー
ルを送信する
Abstract
EBS のスループットが 100 MB を超えた場合にメールを送信するストレージスループットアラームの作成方法につ
いて説明します。
このシナリオでは、AWS マネジメントコンソールまたはコマンドラインツールを使用して Amazon
Simple Notification Service の通知を設定し、EBS のスループットが 100 MB を超えたときにメールを
送信するアラームの設定方法を示します。
Topics
• AWS マネジメントコンソール (p. 96)
• コマンドラインツール (p. 98)
API Version 2010-08-01
95
Amazon CloudWatch 開発者ガイド
AWS マネジメントコンソール
AWS マネジメントコンソール
E メールを送信するストレージスループットアラームを作成するには
1.
2.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Regions and Endpoints を参照してください。
3.
4.
ナビゲーションペインの [Alarms] をクリックします。
[Create Alarm] をクリックし、[CloudWatch Metrics by Category] ペインで、メトリックスのカテ
ゴリ(例: [EBS Metrics])を選択します。
メトリックスのリストで、特定のボリューム ID の [VolumeWriteBytes] が含まれる行を選択しま
す。
5.
単一のボリュームの平均 VolumeWriteBytes を表すグラフが下側のペインに表示されます。
API Version 2010-08-01
96
Amazon CloudWatch 開発者ガイド
AWS マネジメントコンソール
6.
7.
8.
[Statistic] ドロップダウンリストから [Average] を選択します。
[Period] ドロップダウンリストから [5 Minutes] を選択します。
[Next] をクリックし、[Alarm Threshold] の [Name] フィールドに一意のアラーム名(例:
「myHighWriteAlarm」)を入力します。
9.
[Description] フィールドには、アラームの説明(例: 「VolumeWriteBytes 100,000 KiB/s
」)を入力します。
10. [is] ドロップダウンリストで [>] を選択します。
11. [is] ドロップダウンリストの隣にあるボックスに「100000」を入力し、[for] フィールドに「15」
を入力します。
[Alarm Preview] の下に、しきい値が図で表示されます。
12. [Actions] の [Whenever this alarm] ドロップダウンリストで、[State is ALARM] を選択します。
13. [Send notification to] ドロップダウンリストにある既存の Amazon SNS トピックを選択するか、新
しい Amazon SNS トピックを作成します。
14. 新しい Amazon SNS トピックを作成するには、[New list] を選択します。
[Send notification to] フィールドに、新しい Amazon SNS トピックの名前(例:
「myHighCpuAlarm」)を入力し、[Email list] フィールドに、アラームが ALARM 状態に変化した
ときに通知を受ける E メールアドレスをカンマで区切って入力します。
15. ナビゲーションペインで [Create Alarm] をクリックして、アラーム作成処理が終了します。
API Version 2010-08-01
97
Amazon CloudWatch 開発者ガイド
コマンドラインツール
コマンドラインツール
EBS のスループットが 100 MB を超えた場合に Amazon Simple Notification Service メールメッ
セージを送信するには
1.
2.
Amazon Simple Notification Service トピックを作成します。Amazon SNS トピックの作成につい
ては、Amazon Simple Notification Service の設定 (p. 82) の説明を参照してください。
アラームを作成します。
Prompt>aws cloudwatch put-metric-alarm --alarm-name ebs-mon --alarm-descrip
tion "Alarm when EBS volume exceeds 100MB throughput" --metric-name
VolumeReadBytes --namespace AWS/EBS --statistic Average --period 300 -threshold 100000000 --comparison-operator GreaterThanThreshold --dimensions
Name=VolumeId,Value=my-volume-id --evaluation-periods 3 --alarm-actions
arn:aws:sns:us-east-1:1234567890:my-alarm-topic --insufficient-data-actions
arn:aws:sns:us-east-1:1234567890:my-insufficient-data-topic
3.
コマンドが成功した場合、AWS CLI はコマンドプロンプトに戻ります。
アラームをテストします。
• アラームの状態を強制的に ALARM に変化させます。
Prompt>aws cloudwatch set-alarm-state --alarm-name lb-mon --state-reason
"initializing" --state-value OK
Prompt>aws cloudwatch set-alarm-state --alarm-name lb-mon --state-reason
"initializing" --state-value ALARM
Prompt>aws cloudwatch set-alarm-state --alarm-name lb-mon --state-reason
"initializing" --state-value INSUFFICIENT_DATA
• メールを 2 件受信していることを確認します。
インスタンスを停止、終了、または復旧するアラー
ムを作成する
Abstract
Amazon EC2 インスタンスを自動的に停止、終了、または復旧する CloudWatch アラームを作成します。
Amazon CloudWatch アラームアクションを使用すると、Amazon Elastic Compute Cloud(Amazon
EC2)インスタンスの実行を継続する必要がなくなった場合に、そのインスタンスを自動的に停止また
は終了するアラームを作成することができます。システム障害が発生した場合に、自動的に新しいハー
ドウェアでこれらのインスタンスを復旧するアラームを作成することもできます。
自動的にインスタンスを停止または終了するシナリオはいくつもあります。たとえば、バッチ給与計算
処理ジョブまたは科学計算タスクを専用に行うインスタンスを使用している場合が挙げられます。これ
らのインスタンスは一定期間動作して仕事を完了します。このようなインスタンスは、アイドル状態
(課金されている状態)にせずに、停止または終了するとコスト削減につながります。停止アラームア
クションと終了アラームアクションの主な違いは、停止したインスタンスを後から再起動する必要が生
じたときに簡単に実行でき、さらに同じインスタンス ID とルートボリュームを維持できることです。
API Version 2010-08-01
98
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch アラームへのアクションの追加
しかし、終了したインスタンスを再起動することはできません。代わりに、新しいインスタンスを起動
する必要があります。
基になるハードウェア障害または AWS による修復を必要とする問題によりインスタンスが正常に機能
しなくなった場合に、自動的に Amazon EC2 インスタンスを復旧するアラームを作成できます。シス
テムステータスチェックの失敗の原因となる問題には、次のようなものがあります。
• ネットワーク接続の喪失
• システム電源の喪失
• 物理ホストのソフトウェアの問題
• 物理ホストのハードウェアの問題
Important
復旧アクションは、次のインスタンスでのみサポートされています。
• C3、C4、M3、R3、および T2 インスタンスタイプ。
• アジアパシフィック(シンガポール)、アジアパシフィック(シドニー)、アジアパシフィッ
ク(東京)、欧州(アイルランド)、欧州 (フランクフルト)、南米(サンパウロ)、US East
(N. Virginia)、米国西部(北カリフォルニア)、および米国西部(オレゴン)リージョン内の
インスタンス。
• VPC のインスタンス。
Note
インスタンスにパブリック IP アドレスが割り当てられている場合、サブネットの設
定で許可されていれば、復旧後に新しいパブリック IP アドレスを割り当てられま
す。パブリック IP アドレスを保持するには、代わりに Elastic IP アドレスを使用し
ます。
• 共有テナンシーのインスタンス(インスタンスのテナント属性が default に設定されてい
る)。
• 排他的に Amazon EBS ストレージを使用するインスタンス。
現在、復旧アクションは、EC2-Classic インスタンス、専用テナンシーのインスタンス、イン
スタンスストアボリュームを使用するインスタンスではサポートされていません。
停止、終了または復旧のアクションは、Amazon EC2 インスタンスメトリックスごとに設定されてい
る任意のアラームに追加できます。たとえば、(AWS/EC2 名前空間で)Amazon CloudWatch によっ
て提供される基本モニタリングメトリックスと詳細モニタリングメトリックスや、「InstanceId=」ディ
メンションを含む任意のカスタムメトリックスに設定されているアラームが対象です。ただし、InstanceId
値が実行中の有効な Amazon EC2 インスタンスを参照している場合に限ります。
目次
• Amazon CloudWatch アラームへのアクションの追加 (p. 99)
• Amazon CloudWatch アラームアクションシナリオ (p. 119)
Amazon CloudWatch アラームへのアクションの追加
Amazon EC2 コンソールまたは Amazon CloudWatch コンソールを使用して、アラームアクションの停
止、終了、または復旧を設定できます。また、これら 3 つのアクションはすべて、Amazon CloudWatch
コマンドラインインターフェイス (CLI)、CloudWatch API、または AWS SDK を使用して設定すること
API Version 2010-08-01
99
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch アラームへのアクションの追加
もできます。Amazon CloudWatch API を AWS SDK と組み合わせて使用する方法の詳細については、
「サンプルコードとライブラリ」を参照してください。
Amazon EC2 コンソールを使用して、インスタンスを停止する
アラームを作成する
特定のしきい値を超えた場合に Amazon EC2 インスタンスを停止するアラームを作成できます。たと
えば、開発またはテスト用のインスタンスを実行したまま、終了するのを忘れることがたまにありま
す。CPU 平均使用率が 24 時間にわたって 10 パーセントを下回った場合にトリガされ、インスタンス
がアイドル状態にあり使用されていないことを通知するアラームを作成できます。必要に応じて、しき
い値、期間、および間隔を調整できます。さらに、アラームがトリガされたときに E メールが届くよ
うに Amazon Simple Notification Service(Amazon SNS)通知を追加できます。
ルートデバイスとして Amazon Elastic Block Store ボリュームを使用している Amazon EC2 インスタ
ンスは、停止することも終了することもできます。一方、ルートデバイスとしてインスタンスストアを
使用しているインスタンスは、終了することのみ可能です。
Note
AWS Identity and Access Management (IAM) アカウントを使用してアラームを作成または変更
する場合、次の Amazon EC2 のアクセス権限が必要です。
• ec2:DescribeInstanceStatus と ec2:DescribeInstances。Amazon EC2 インスタン
スステータスメトリックスに対するすべてのアラーム用。
• ec2:StopInstances。停止アクションを含むアラーム用。
• ec2:TerminateInstances。終了アクションを含むアラーム用。
• ec2:DescribeInstanceRecoveryAttribute と ec2:RecoverInstances。復旧アク
ションを含むアラーム用。
Amazon CloudWatch に対する読み取り/書き込みのアクセス権限があり、Amazon EC2 に対す
るアクセス権限がない場合、アラームは作成できますが、Amazon EC2 インスタンスで停止ま
たは終了アクションが実行されません。ただし、関連付けられている Amazon EC2 API の使用
許可が後で付与される場合、以前に作成したアラームアクションは実行されるようになりま
す。IAM 許可の詳細については、IAM を使用する の Permissions and Policies を参照してくだ
さい。
IAM ロール(たとえば、Amazon EC2 インスタンスプロファイル)を使用している場合は、ア
ラームアクションを使用してインスタンスを停止または終了することはできません。ただし、
アラームの状態を確認して、Amazon SNS 通知や Auto Scaling ポリシーなど、その他のアク
ションを実行することはできます。
AWS Security Token Service (AWS STS) を用いて許可された一時的な認証情報を使用してい
る場合は、アラームアクションを用いて Amazon EC2 インスタンスを停止または終了すること
はできません。
アイドル状態のインスタンスを停止するアラームを作成するには
1.
https://console.aws.amazon.com/ec2/)にある Amazon EC2 コンソールを開きます。
2.
必要ならば、リージョンを変更します。ナビゲーションバーから、インスタンスが動作している
リージョンを選択します。詳細については、Regions and Endpoints を参照してください。
API Version 2010-08-01
100
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch アラームへのアクションの追加
3.
ナビゲーションペインで、[INSTANCES] の下にある [Instances] をクリックします。
4.
コンテンツペインでインスタンスを右クリックし、[CloudWatch Monitoring] を選択して、[Add/Edit
Alarms] をクリックします。
5.
6.
または、インスタンスを選択し、下側のペインの [Monitoring] タブで [Create Alarm] をクリックし
ます。
[Alarm Details for] ダイアログボックスで、[Create Alarm] をクリックします。
アラームがトリガされたときに E メールが届くようにする場合は、[Create Alarm for] ダイアログ
ボックスの [Send a notification to] ボックスで、既存の Amazon SNS トピックを選択するか、また
は [Create Topic] をクリックして新しい Amazon SNS トピックを作成します。
新しいトピックを作成する場合は、[Send a notification to] ボックスでトピックの名前を入力し、
[With these recipients] ボックスで、該当する受信者の E メールアドレス(コンマで区切る)を入
力します。その後、アラームを作成すると、このトピックの E メールを受信する前に、許可する
必要がある受信登録確認メールが送信されます。
API Version 2010-08-01
101
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch アラームへのアクションの追加
7.
8.
[Take the action] チェックボックスをオンにし、[Stop this instance] ラジオボタンを選択します。
[Whenever] ボックスで、使用する統計を選択し、メトリックスを選択します。この例では、[Average]
と [CPU Utilization] を選択します。
9. [Is] ボックスで、メトリックスのしきい値を定義します。この例では、[10] パーセントを入力しま
す。
10. [For at least] ボックスで、アラームのサンプリング期間を選択します。この例では、1 時間の期間
の連続数として [24] を入力します。
11. アラーム名を変更するには、[Name this alarm] ボックスに新しい名前を入力します。
アラーム名を入力しない場合は、Amazon CloudWatch が自動的に名前を付けます。
Note
アラームを作成する前に独自の要件を基にアラーム設定を調整できます。または後から編
集することができます。その対象となる設定には、メトリックス、しきい値、期間、アク
ション、および通知の設定などがあります。ただし、アラームの作成後は、アラームの名
前を編集できなくなります。
12. [Create Alarm] をクリックします。
Amazon EC2 コンソールを使用して、インスタンスを終了する
アラームを作成する
特定のしきい値を超えたときに EC2 インスタンスを自動的に終了するアラームを作成できます(イン
スタンスの終了保護が有効になっていない場合)。たとえば、インスタンスが仕事を終え、再びそのイ
ンスタンスを使用する必要がない場合は、インスタンスを終了することをお勧めします。インスタンス
を後で使用する可能性がある場合は、インスタンスを終了するのでなく停止します。インスタンスの終
了保護の有効化および無効化の詳細については、Linux インスタンス用 Amazon EC2 ユーザーガイド
の Enabling Termination Protection for an Instance を参照してください。
Note
AWS Identity and Access Management (IAM) アカウントを使用してアラームを作成または変更
する場合、次の Amazon EC2 のアクセス権限が必要です。
• ec2:DescribeInstanceStatus と ec2:DescribeInstances。Amazon EC2 インスタン
スステータスメトリックスに対するすべてのアラーム用。
API Version 2010-08-01
102
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch アラームへのアクションの追加
• ec2:StopInstances。停止アクションを含むアラーム用。
• ec2:TerminateInstances。終了アクションを含むアラーム用。
• ec2:DescribeInstanceRecoveryAttribute と ec2:RecoverInstances。復旧アク
ションを含むアラーム用。
Amazon CloudWatch に対する読み取り/書き込みのアクセス権限があり、Amazon EC2 に対す
るアクセス権限がない場合、アラームは作成できますが、Amazon EC2 インスタンスで停止ま
たは終了アクションが実行されません。ただし、関連付けられている Amazon EC2 API の使用
許可が後で付与される場合、以前に作成したアラームアクションは実行されるようになりま
す。IAM 許可の詳細については、IAM を使用する の Permissions and Policies を参照してくだ
さい。
IAM ロール(たとえば、Amazon EC2 インスタンスプロファイル)を使用している場合は、ア
ラームアクションを使用してインスタンスを停止または終了することはできません。ただし、
アラームの状態を確認して、Amazon SNS 通知や Auto Scaling ポリシーなど、その他のアク
ションを実行することはできます。
AWS Security Token Service (AWS STS) を用いて許可された一時的な認証情報を使用してい
る場合は、アラームアクションを用いて Amazon EC2 インスタンスを停止または終了すること
はできません。
アイドル状態のインスタンスを終了するアラームを作成するには
1.
2.
https://console.aws.amazon.com/ec2/)にある Amazon EC2 コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーから、インスタンスが動作している
リージョンを選択します。詳細については、Regions and Endpoints を参照してください。
3.
4.
ナビゲーションペインで、[INSTANCES] の下にある [Instances] をクリックします。
上側のペインで、インスタンスを右クリックし、[CloudWatch Monitoring] を選択して [Add/Edit
Alarms] をクリックします。
5.
または、インスタンスを選択し、下側のペインの [Monitoring] タブで、[Create Alarm] をクリック
します。
[Alarm Details for] ダイアログボックスで、[Create Alarm] をクリックします。
API Version 2010-08-01
103
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch アラームへのアクションの追加
6.
アラームがトリガされたときに E メールが届くようにする場合は、[Create Alarm for] ダイアログ
ボックスの [Send a notification to] ボックスで、既存の Amazon SNS トピックを選択するか、また
は [Create Topic] をクリックして新しい Amazon SNS トピックを作成します。
新しいトピックを作成する場合は、[Send a notification to] ボックスでトピックの名前を入力し、
[With these recipients] ボックスで、該当する受信者の E メールアドレス(コンマで区切る)を入
力します。その後、アラームを作成すると、このトピックの E メールを受信する前に、許可する
必要がある受信登録確認メールが送信されます。
7.
8.
[Take the action] チェックボックスをオンにし、[Terminate this instance] ラジオボタンを選択しま
す。
[Whenever] ボックスで、使用する統計を選択し、メトリックスを選択します。この例では、[Average]
と [CPU Utilization] を選択します。
9.
[Is] ボックスで、メトリックスのしきい値を定義します。この例では、[10] パーセントを入力しま
す。
10. [For at least] ボックスで、アラームのサンプリング期間を選択します。この例では、1 時間の期間
の連続数として [24] を入力します。
11. アラーム名を変更するには、[Name this alarm] ボックスに新しい名前を入力します。
アラーム名を入力しない場合は、Amazon CloudWatch が自動的に名前を付けます。
API Version 2010-08-01
104
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch アラームへのアクションの追加
Note
アラームを作成する前に独自の要件を基にアラーム設定を調整できます。または後から編
集することができます。その対象となる設定には、メトリックス、しきい値、期間、アク
ション、および通知の設定などがあります。ただし、アラームの作成後は、アラームの名
前を編集できなくなります。
12. [Create Alarm] をクリックします。
Amazon EC2 コンソールを使用して、インスタンスを復旧する
アラームを作成する
Amazon EC2 インスタンスをモニタリングし、基になるハードウェア障害または AWS による修復を必
要とする問題によりインスタンスが正常に機能しなくなった場合に、自動的にインスタンスを復旧する
Amazon CloudWatch アラームを作成できます。復旧されたインスタンスは、インスタンス ID、プライ
ベート IP アドレス、Elastic IP アドレス、すべてのインスタンスメタデータを含め、元のインスタンス
と同じです。
StatusCheckFailed_System アラームがトリガーされ、復旧アクションが開始されると、アラーム
を作成したときに選択し、復旧アクションに関連付けた Amazon SNS トピックによって通知されます。
インスタンスを復旧する際、インスタンスを再起動するときにインスタンスは移行され、メモリ内にあ
るデータは失われます。プロセスが完了すると、復旧処理のステータスと、それ以降の手順を含むメー
ルの通知を受け取ります。復旧されたインスタンスでインスタンスが再起動されたことがわかります。
システムステータスチェックの失敗の原因となる問題には、次のようなものがあります。
•
•
•
•
ネットワーク接続の喪失
システム電源の喪失
物理ホストのソフトウェアの問題
物理ホストのハードウェアの問題
Important
復旧アクションは、次のインスタンスでのみサポートされています。
• C3、C4、M3、R3、および T2 インスタンスタイプ。
• アジアパシフィック(シンガポール)、アジアパシフィック(シドニー)、アジアパシフィッ
ク(東京)、欧州(アイルランド)、欧州 (フランクフルト)、南米(サンパウロ)、US East
(N. Virginia)、米国西部(北カリフォルニア)、および米国西部(オレゴン)リージョン内の
インスタンス。
• VPC のインスタンス。専用インスタンスはサポートされていません。
Note
インスタンスにパブリック IP アドレスが割り当てられている場合、復旧後に新しい
パブリック IP アドレスを割り当てられます。パブリック IP アドレスを保持するに
は、代わりに Elastic IP アドレスを使用します。
• EBS-backed ストレージを使用するインスタンス。インスタンスストレージはサポートされ
ていません。インスタンスストレージがアタッチされている場合、インスタンスの自動復旧
は失敗します。
API Version 2010-08-01
105
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch アラームへのアクションの追加
Note
AWS Identity and Access Management (IAM) アカウントを使用してアラームを作成または変更
する場合、次の Amazon EC2 のアクセス権限が必要です。
• ec2:DescribeInstanceStatus と ec2:DescribeInstances。Amazon EC2 インスタン
スステータスメトリックスに対するすべてのアラーム用。
• ec2:StopInstances。停止アクションを含むアラーム用。
• ec2:TerminateInstances。終了アクションを含むアラーム用。
• ec2:DescribeInstanceRecoveryAttribute と ec2:RecoverInstances。復旧アク
ションを含むアラーム用。
Amazon CloudWatch に対する読み取り/書き込みのアクセス権限があり、Amazon EC2 に対す
るアクセス権限がない場合、アラームは作成できますが、Amazon EC2 インスタンスで停止ま
たは終了アクションが実行されません。ただし、関連付けられている Amazon EC2 API の使用
許可が後で付与される場合、以前に作成したアラームアクションは実行されるようになりま
す。IAM 許可の詳細については、IAM を使用する の Permissions and Policies を参照してくだ
さい。
IAM ロール(たとえば、Amazon EC2 インスタンスプロファイル)を使用している場合は、ア
ラームアクションを使用してインスタンスを停止または終了することはできません。ただし、
アラームの状態を確認して、Amazon SNS 通知や Auto Scaling ポリシーなど、その他のアク
ションを実行することはできます。
AWS Security Token Service (AWS STS) を用いて許可された一時的な認証情報を使用してい
る場合は、アラームアクションを用いて Amazon EC2 インスタンスを停止または終了すること
はできません。
インスタンスを復旧するアラームを作成するには
1.
2.
https://console.aws.amazon.com/ec2/)にある Amazon EC2 コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーから、インスタンスが動作している
リージョンを選択します。詳細については、Regions and Endpoints を参照してください。
3.
ナビゲーションペインで、[INSTANCES] の下にある [Instances] をクリックします。
4.
上側のペインで、インスタンスを右クリックし、[CloudWatch Monitoring] を選択して [Add/Edit
Alarms] をクリックします。
5.
または、インスタンスを選択し、下側のペインの [Monitoring] タブで、[Create Alarm] をクリック
します。
[Alarm Details for] ダイアログボックスで、[Create Alarm] をクリックします。
API Version 2010-08-01
106
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch アラームへのアクションの追加
6.
アラームがトリガされたときに E メールが届くようにする場合は、[Create Alarm for] ダイアログ
ボックスの [Send a notification to] ボックスで、既存の Amazon SNS トピックを選択するか、また
は [Create Topic] をクリックして新しい Amazon SNS トピックを作成します。
新しいトピックを作成する場合は、[Send a notification to] ボックスでトピックの名前を入力し、
[With these recipients] ボックスで、該当する受信者の E メールアドレス(コンマで区切る)を入
力します。その後、アラームを作成すると、このトピックの E メールを受信する前に、許可する
必要がある受信登録確認メールが送信されます。
7.
8.
[Take the action] チェックボックスをオンにし、[Recover this instance] ラジオボタンを選択しま
す。
[Whenever] ボックスで、[Status Check Failed (System)] を選択します。
9. [For at least] フィールドに、「2」と入力します。
10. [consecutive period(s) of] ボックスで、[1 minute] を選択します。
11. アラームの名前を変更するには、[Name of alarm] ボックスに新しい名前を入力します。
アラーム名を入力しない場合は、Amazon CloudWatch が自動的に名前を付けます。
12. [Create Alarm] をクリックします。
API Version 2010-08-01
107
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch アラームへのアクションの追加
Amazon CloudWatch コンソールを使用して、インスタンスを
停止するアラームを作成する
特定のしきい値を超えた場合に Amazon EC2 インスタンスを停止するアラームを作成できます。たと
えば、開発またはテスト用のインスタンスを実行したまま、終了するのを忘れることがたまにありま
す。CPU 平均使用率が 24 時間にわたって 10 パーセントを下回った場合にトリガされ、インスタンス
がアイドル状態にあり使用されていないことを通知するアラームを作成できます。必要に応じて、しき
い値、期間、および間隔を調整できます。さらに、アラームがトリガされたときに E メールが届くよ
うに Amazon Simple Notification Service(Amazon SNS)通知を追加できます。
Amazon CloudWatch アラームアクションは、EBS-Backed Amazon EC2 インスタンスを停止できます
が、Instance store-Backed Amazon EC2 インスタンスを停止することはできません。ただし、Amazon
CloudWatch アラームアクションは、どのタイプの Amazon EC2 インスタンスでも終了することがで
きます。
Note
AWS Identity and Access Management (IAM) アカウントを使用してアラームを作成または変更
する場合、次の Amazon EC2 のアクセス権限が必要です。
• ec2:DescribeInstanceStatus と ec2:DescribeInstances。Amazon EC2 インスタン
スステータスメトリックスに対するすべてのアラーム用。
• ec2:StopInstances。停止アクションを含むアラーム用。
• ec2:TerminateInstances。終了アクションを含むアラーム用。
• ec2:DescribeInstanceRecoveryAttribute と ec2:RecoverInstances。復旧アク
ションを含むアラーム用。
Amazon CloudWatch に対する読み取り/書き込みのアクセス権限があり、Amazon EC2 に対す
るアクセス権限がない場合、アラームは作成できますが、Amazon EC2 インスタンスで停止ま
たは終了アクションが実行されません。ただし、関連付けられている Amazon EC2 API の使用
許可が後で付与される場合、以前に作成したアラームアクションは実行されるようになりま
す。IAM 許可の詳細については、IAM を使用する の Permissions and Policies を参照してくだ
さい。
IAM ロール(たとえば、Amazon EC2 インスタンスプロファイル)を使用している場合は、ア
ラームアクションを使用してインスタンスを停止または終了することはできません。ただし、
アラームの状態を確認して、Amazon SNS 通知や Auto Scaling ポリシーなど、その他のアク
ションを実行することはできます。
AWS Security Token Service (AWS STS) を用いて許可された一時的な認証情報を使用してい
る場合は、アラームアクションを用いて Amazon EC2 インスタンスを停止または終了すること
はできません。
アイドル状態のインスタンスを停止するアラームを作成するには
1.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
2.
必要ならば、リージョンを変更します。ナビゲーションバーから、インスタンスが動作している
リージョンを選択します。詳細については、Regions and Endpoints を参照してください。
API Version 2010-08-01
108
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch アラームへのアクションの追加
3.
ナビゲーションペインの [Alarms] をクリックします。
4.
[Create Alarm] をクリックし、[CloudWatch Metrics by Category] ペインで、[EC2 Metrics] の下に
ある [Per-Instance Metrics] を選択します。
5.
メトリックスのリストで、アラームを作成するインスタンスとメトリックスを選択します。また、
検索ボックスにインスタンス ID を入力して希望するインスタンスを見つけることができます。
[Statistic] ドロップダウンリストから [Average] を選択します。
[Period] ドロップダウンリストから、期間(1 など)を選択します。
6.
7.
8.
[Next] をクリックし、[Alarm Threshold] の [Name] フィールドに一意のアラーム名(例: 「Stop
EC2 instance」(EC2 インスタンスを停止する))を入力します。
9.
[Description] フィールドにアラームの説明(「CPU EC2 」な
ど)を入力します。
10. [is] ドロップダウンリストで [<] を選択します。
11. [is] ドロップダウンリストの隣にあるボックスに「10」を入力し、[for] フィールドに「1440」を入
力します。
[Alarm Preview] の下に、しきい値が図で表示されます。
[Actions] の下にある [EC2 Action] をクリックします。
[Whenever this alarm] ドロップダウンリストで、[State is ALARM] を選択します。
[Take this action] ドロップダウンリストで、[Stop this instance] を選択します。
[Notification] をクリックし、[Send notification to] ドロップダウンリストにある既存の Amazon SNS
トピックを選択するか、新しい Amazon SNS トピックを作成します。
16. 新しい Amazon SNS トピックを作成するには、[New list] を選択します。
12.
13.
14.
15.
[Send notification to] フィールドに、新しい Amazon SNS トピックの名前
(「Stop_EC2_Instance」など)を入力し、[Email list] フィールドに、アラームが ALARM 状態
に変化したときに通知を送信する E メールのアドレスをカンマで区切って入力します。
Important
新しいトピックを作成する場合や E メールアドレスを既存のトピックに追加する場合は、
追加する各 E メールアドレスにトピックの受信登録の確認メールが送信されます。お客様
が確認メールに含まれたリンクをクリックし、受信登録を確認すると、新しい E メールア
ドレスに通知が送信されるようになります。
17. ナビゲーションペインの [Create Alarm] をクリックして、アラーム作成プロセスを完了します。
API Version 2010-08-01
109
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch アラームへのアクションの追加
Amazon CloudWatch コンソールを使用して、アイドル状態の
インスタンスを終了するアラームを作成する
特定のしきい値を超えたときに Amazon EC2 インスタンスを自動的に終了するアラームを作成できま
す(インスタンスの終了保護が無効になっていない場合)。たとえば、インスタンスが仕事を終え、再
びそのインスタンスを使用する必要がない場合は、インスタンスを終了することをお勧めします。イン
スタンスを後で使用する可能性がある場合は、インスタンスを終了するのでなく停止します。インスタ
ンスの終了保護の無効化の詳細については、Linux インスタンス用 Amazon EC2 ユーザーガイド の
Enabling Termination Protection for an Instance を参照してください。
Note
AWS Identity and Access Management (IAM) アカウントを使用してアラームを作成または変更
する場合、次の Amazon EC2 のアクセス権限が必要です。
• ec2:DescribeInstanceStatus と ec2:DescribeInstances。Amazon EC2 インスタン
スステータスメトリックスに対するすべてのアラーム用。
• ec2:StopInstances。停止アクションを含むアラーム用。
• ec2:TerminateInstances。終了アクションを含むアラーム用。
• ec2:DescribeInstanceRecoveryAttribute と ec2:RecoverInstances。復旧アク
ションを含むアラーム用。
Amazon CloudWatch に対する読み取り/書き込みのアクセス権限があり、Amazon EC2 に対す
るアクセス権限がない場合、アラームは作成できますが、Amazon EC2 インスタンスで停止ま
たは終了アクションが実行されません。ただし、関連付けられている Amazon EC2 API の使用
許可が後で付与される場合、以前に作成したアラームアクションは実行されるようになりま
す。IAM 許可の詳細については、IAM を使用する の Permissions and Policies を参照してくだ
さい。
IAM ロール(たとえば、Amazon EC2 インスタンスプロファイル)を使用している場合は、ア
ラームアクションを使用してインスタンスを停止または終了することはできません。ただし、
アラームの状態を確認して、Amazon SNS 通知や Auto Scaling ポリシーなど、その他のアク
ションを実行することはできます。
AWS Security Token Service (AWS STS) を用いて許可された一時的な認証情報を使用してい
る場合は、アラームアクションを用いて Amazon EC2 インスタンスを停止または終了すること
はできません。
アイドル状態のインスタンスを終了するアラームを作成するには
1.
2.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーから、インスタンスが動作している
リージョンを選択します。詳細については、Regions and Endpoints を参照してください。
API Version 2010-08-01
110
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch アラームへのアクションの追加
3.
ナビゲーションペインの [Alarms] をクリックします。
4.
[Create Alarm] をクリックし、[CloudWatch Metrics by Category] ペインで、[EC2 Metrics] の下に
ある [Per-Instance Metrics] を選択します。
5.
メトリックスのリストで、アラームを作成するインスタンスとメトリックスを選択します。また、
検索ボックスにインスタンス ID を入力して希望するインスタンスを見つけることができます。
[Statistic] ドロップダウンリストから [Average] を選択します。
[Period] ドロップダウンリストから、期間(1 など)を選択します。
6.
7.
8.
[Next] をクリックし、[Alarm Threshold] の [Name] フィールドに一意のアラーム名(例: 「Terminate
EC2 instance」(EC2 インスタンスを終了する))を入力します。
9.
[Description] フィールドにアラームの説明(「CPU EC2 」な
ど)を入力します。
10. [is] ドロップダウンリストで [<] を選択します。
11. [is] ドロップダウンリストの隣にあるボックスに「10」を入力し、[for] フィールドに「1440」を入
力します。
[Alarm Preview] の下に、しきい値が図で表示されます。
[Actions] の下で、[EC2 Action] をクリックします。
[Whenever this alarm] ドロップダウンリストで、[State is ALARM] を選択します。
[Take this action] ドロップダウンリストで、[Terminate this instance] をクリックします。
[Notification] をクリックし、[Send notification to] ドロップダウンリストにある既存の Amazon SNS
トピックを選択するか、新しい Amazon SNS トピックを作成します。
16. 新しい Amazon SNS トピックを作成するには、[New list] を選択します。
12.
13.
14.
15.
[Send notification to] フィールドに、新しい Amazon SNS トピックの名前
(「Terminate_EC2_Instance」など)を入力し、[Email list] フィールドに、アラームが ALARM
状態に変化したときに通知を送信する E メールのアドレスをカンマで区切って入力します。
Important
新しいトピックを作成する場合や E メールアドレスを既存のトピックに追加する場合は、
追加する各 E メールアドレスにトピックの受信登録の確認メールが送信されます。お客様
が確認メールに含まれたリンクをクリックし、受信登録を確認すると、新しい E メールア
ドレスに通知が送信されるようになります。
17. ナビゲーションペインの [Create Alarm] をクリックして、アラーム作成プロセスを完了します。
API Version 2010-08-01
111
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch アラームへのアクションの追加
Amazon CloudWatch コンソールを使用して、インスタンスを
復旧するアラームを作成する
Amazon EC2 インスタンスをモニタリングし、基になるハードウェア障害または AWS による修復を必
要とする問題によりインスタンスが正常に機能しなくなった場合に、自動的にインスタンスを復旧する
Amazon CloudWatch アラームを作成できます。復旧されたインスタンスは、インスタンス ID、プライ
ベート IP アドレス、Elastic IP アドレス、すべてのインスタンスメタデータを含め、元のインスタンス
と同じです。
StatusCheckFailed_System アラームがトリガーされ、復旧アクションが開始されると、アラーム
を作成したときに選択し、復旧アクションに関連付けた Amazon SNS トピックによって通知されます。
インスタンスを復旧する際、インスタンスを再起動するときにインスタンスは移行され、メモリ内にあ
るデータは失われます。プロセスが完了すると、復旧処理のステータスと、それ以降の手順を含むメー
ルの通知を受け取ります。復旧されたインスタンスでインスタンスが再起動されたことがわかります。
システムステータスチェックの失敗の原因となる問題には、次のようなものがあります。
•
•
•
•
ネットワーク接続の喪失
システム電源の喪失
物理ホストのソフトウェアの問題
物理ホストのハードウェアの問題
Important
復旧アクションは、次のインスタンスでのみサポートされています。
• C3、C4、M3、R3、および T2 インスタンスタイプ。
• アジアパシフィック(シンガポール)、アジアパシフィック(シドニー)、アジアパシフィッ
ク(東京)、欧州(アイルランド)、欧州 (フランクフルト)、南米(サンパウロ)、US East
(N. Virginia)、米国西部(北カリフォルニア)、および米国西部(オレゴン)リージョン内の
インスタンス。
• VPC のインスタンス。専用インスタンスはサポートされていません。
Note
インスタンスにパブリック IP アドレスが割り当てられている場合、復旧後に新しい
パブリック IP アドレスを割り当てられます。パブリック IP アドレスを保持するに
は、代わりに Elastic IP アドレスを使用します。
• EBS-backed ストレージを使用するインスタンス。インスタンスストレージはサポートされ
ていません。インスタンスストレージがアタッチされている場合、インスタンスの自動復旧
は失敗します。
Note
AWS Identity and Access Management (IAM) アカウントを使用してアラームを作成または変更
する場合、次の Amazon EC2 のアクセス権限が必要です。
• ec2:DescribeInstanceStatus と ec2:DescribeInstances。Amazon EC2 インスタン
スステータスメトリックスに対するすべてのアラーム用。
• ec2:StopInstances。停止アクションを含むアラーム用。
• ec2:TerminateInstances。終了アクションを含むアラーム用。
API Version 2010-08-01
112
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch アラームへのアクションの追加
• ec2:DescribeInstanceRecoveryAttribute と ec2:RecoverInstances。復旧アク
ションを含むアラーム用。
Amazon CloudWatch に対する読み取り/書き込みのアクセス権限があり、Amazon EC2 に対す
るアクセス権限がない場合、アラームは作成できますが、Amazon EC2 インスタンスで停止ま
たは終了アクションが実行されません。ただし、関連付けられている Amazon EC2 API の使用
許可が後で付与される場合、以前に作成したアラームアクションは実行されるようになりま
す。IAM 許可の詳細については、IAM を使用する の Permissions and Policies を参照してくだ
さい。
IAM ロール(たとえば、Amazon EC2 インスタンスプロファイル)を使用している場合は、ア
ラームアクションを使用してインスタンスを停止または終了することはできません。ただし、
アラームの状態を確認して、Amazon SNS 通知や Auto Scaling ポリシーなど、その他のアク
ションを実行することはできます。
AWS Security Token Service (AWS STS) を用いて許可された一時的な認証情報を使用してい
る場合は、アラームアクションを用いて Amazon EC2 インスタンスを停止または終了すること
はできません。
インスタンスを復旧するアラームを作成するには
1.
2.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーから、インスタンスが動作している
リージョンを選択します。詳細については、Regions and Endpoints を参照してください。
3.
ナビゲーションペインの [Alarms] をクリックします。
4.
[Create Alarm] をクリックし、[CloudWatch Metrics by Category] ペインで、[EC2 Metrics] の下に
ある [Per-Instance Metrics] を選択します。
メトリックスのリストで、アラームを作成するインスタンスと StatusCheckFailed_System メ
トリックスを選択します。また、検索ボックスにインスタンス ID を入力して希望するインスタン
スを見つけることができます。
[Statistic] ドロップダウンリストから [Minimum] を選択します。
5.
6.
Note
これは現在サポートされている唯一の統計情報です。
7.
[Period] ドロップダウンリストから、期間(「1 Minute」など)を選択します。
8.
[Next] をクリックし、[Alarm Threshold] の [Name] フィールドに一意のアラーム名(例: 「Recover
EC2 instance」)を入力します。
API Version 2010-08-01
113
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch アラームへのアクションの追加
9.
[Description] フィールドにアラームの説明(例: 「Recover EC2 instance when health checks
fail」)を入力します。
10. [is] ドロップダウンリストで [>] を選択します。
11. [is] ドロップダウンリストの隣にあるボックスに「0」を入力し、[for] フィールドに「2」を入力し
ます。
[Alarm Preview] の下に、しきい値が図で表示されます。
12. [Actions] の下で、[EC2 Action] をクリックします。
13. [Whenever this alarm] ドロップダウンリストで、[State is ALARM] を選択します。
14. [Take this action] ドロップダウンリストで、[Recover this instance] をクリックします。
15. [Notification] をクリックし、[Send notification to] ドロップダウンリストにある既存の Amazon SNS
トピックを選択するか、新しい Amazon SNS トピックを作成します。
16. 新しい Amazon SNS トピックを作成するには、[New list] を選択します。
[Send notification to] フィールドに、新しい Amazon SNS トピックの名前
(「Recover_EC2_Instance」など)を入力し、[Email list] フィールドに、アラームが ALARM 状
態に変化したときに通知を送信する E メールのアドレスをカンマで区切って入力します。
Important
新しいトピックを作成する場合や E メールアドレスを既存のトピックに追加する場合は、
追加する各 E メールアドレスにトピックの受信登録の確認メールが送信されます。お客様
が確認メールに含まれたリンクをクリックし、受信登録を確認すると、新しい E メールア
ドレスに通知が送信されるようになります。
17. ナビゲーションペインの [Create Alarm] をクリックして、アラーム作成プロセスを完了します。
Amazon CloudWatch コンソールを使用して、トリガされたア
ラームとアクションの履歴を表示する
Amazon CloudWatch コンソールではアラームとアクションの履歴を表示できます。Amazon CloudWatch
では過去 2 週間分のアラームとアクションの履歴を維持します。
トリガされたアラームとアクションの履歴を表示するには
1.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
2.
必要ならば、リージョンを変更します。ナビゲーションバーから、インスタンスが動作している
リージョンを選択します。詳細については、Regions and Endpoints を参照してください。
3.
ナビゲーションペインの [Alarms] をクリックします。
API Version 2010-08-01
114
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch アラームへのアクションの追加
4.
5.
6.
上側のペインで、履歴を表示するアラームを選択します。
下側のペインの [Details] タブには、最新の状態の遷移に加えて、時刻とメトリックス値が表示さ
れます。
[History] タブをクリックすると、最新の履歴エントリが表示されます。
CLI または API を使用して、インスタンスを停止、終了または
復旧するアラームを作成する
AWS CLI または Amazon CloudWatch API を使用する場合、あるいは AWS SDK を API と一緒に使用
する場合は、Amazon EC2 インスタンごとのスメトリックスを使用して CloudWatch アラームを作成
し、さらにアクション専用の Amazon リソースネーム (ARN) を使用してアクションを追加することが
できます。任意のアラーム状態にアクションを追加できます。また、アクションごとにリージョンを指
定できます。このリージョンは、put-metric-alarm リクエストの送信先であるリージョンと一致する必
要があります。
Action
ARN(リージョンを伴なう)
Stop
arn:aws:automate:us-east-1:ec2:stop
Terminate
arn:aws:automate:us-east-1:ec2:terminate
Recover
arn:aws:automate:us-east-1:ec2:recover
Amazon CloudWatch API を AWS SDK と組み合わせて使用する方法の詳細については、「サンプル
コードとライブラリ」を参照してください。
Note
AWS Identity and Access Management (IAM) アカウントを使用してアラームを作成または変更
する場合、次の Amazon EC2 のアクセス権限が必要です。
• ec2:DescribeInstanceStatus と ec2:DescribeInstances。Amazon EC2 インスタン
スステータスメトリックスに対するすべてのアラーム用。
• ec2:StopInstances。停止アクションを含むアラーム用。
• ec2:TerminateInstances。終了アクションを含むアラーム用。
• ec2:DescribeInstanceRecoveryAttribute と ec2:RecoverInstances。復旧アク
ションを含むアラーム用。
Amazon CloudWatch に対する読み取り/書き込みのアクセス権限があり、Amazon EC2 に対す
るアクセス権限がない場合、アラームは作成できますが、Amazon EC2 インスタンスで停止ま
たは終了アクションが実行されません。ただし、関連付けられている Amazon EC2 API の使用
許可が後で付与される場合、以前に作成したアラームアクションは実行されるようになりま
す。IAM 許可の詳細については、IAM を使用する の Permissions and Policies を参照してくだ
さい。
IAM ロール(たとえば、Amazon EC2 インスタンスプロファイル)を使用している場合は、ア
ラームアクションを使用してインスタンスを停止または終了することはできません。ただし、
アラームの状態を確認して、Amazon SNS 通知や Auto Scaling ポリシーなど、その他のアク
ションを実行することはできます。
AWS Security Token Service (AWS STS) を用いて許可された一時的な認証情報を使用してい
る場合は、アラームアクションを用いて Amazon EC2 インスタンスを停止または終了すること
はできません。
API Version 2010-08-01
115
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch アラームへのアクションの追加
CLI を使用してインスタンスを停止するアラームを作成するには
arn:aws:automate:us-east-1:ec2:stop ARN を使用して、Amazon EC2 インスタンスを停止す
ることができます。次の例は、CPU 使用率の平均が 24 時間にわたって 10 パーセント未満である場
合、インスタンスを停止する方法を示したものです。
•
コマンドプロンプトで、次のように入力します。
% aws cloudwatch put-metric-alarm --alarm-name my-Alarm --alarm-description
"Stop the instance when it is idle for a day" --namespace "AWS/EC2" --di
mensions Name=InstanceId,Value=i-abc123 --statistic Average --metric-name
CPUUtilization --comparison-operator LessThanThreshold --threshold 10 -period 86400 --evaluation-periods 4 --alarm-actions arn:aws:automate:useast-1:ec2:stop
CLI を使用してインスタンスを終了するアラームを作成するには
•
コマンドプロンプトで、次のように入力します。
% aws cloudwatch put-metric-alarm --alarm-name my-Alarm --alarm-description
"Terminate the instance when it is idle for a day" --namespace "AWS/EC2"
--dimensions Name=InstanceId,Value=i-abc123" --statistic Average --metricname CPUUtilization --comparison-operator LessThanThreshold --threshold 1
--period 86400 --evaluation-periods 4 -- alarm-actions arn:aws:automate:useast-1:ec2:terminate
CLI を使用してインスタンスを復旧するアラームを作成するには
•
コマンドプロンプトで、次のように入力します。
% aws cloudwatch put-metric-alarm --alarm-name my-Alarm --alarm-description
"Recover the instance" --namespace "AWS/EC2" --dimensions Name=In
stanceId,Value=i-abc123" --statistic Average --metric-name StatusCheck
Failed_System --comparison-operator GreaterThanThreshold --threshold 0 -period 60 --evaluation-periods 2 --alarm-actions arn:aws:automate:us-east1:ec2:recover
API を使用してインスタンスを停止するアラームを作成するには
次の例のリクエストは、Amazon EC2 インスタンスを停止させるアラームを作成する方法を示してい
ます。
•
http://monitoring.amazonaws.com/
?SignatureVersion=2
&Action=PutMetricAlarm
&Version=2009-05-15
API Version 2010-08-01
116
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch アラームへのアクションの追加
&Namespace=AWS/EC2
&MetricName=CPUUtilization
&Dimension.member.1.Name=instance-id
&Dimension.member.1.Value=i-abc123
&Period=86400
&Statistic=Average
&AlarmName=Stop-EC2-Instance
&ComparisonOperator=LessThanThreshold
&Threshold=10
&EvaluationPeriods=4
&StartTime=2009-01-16T00:00:00
&EndTime=2009-01-16T00:02:00
&Timestamp=2009-01-08-18
&AWSAccessKeyId=XXX YOUR ACCESS KEY XXX
&Signature=%XXX YOUR SIGNATURE XXX%3D
&AlarmActions.member.1=arn:aws:automate:us-east-1:ec2:stop
API を使用してインスタンスを終了するアラームを作成するには
次のリクエストの例では、Amazon EC2 インスタンスを終了するアラームの作成方法を示します。
•
http://monitoring.amazonaws.com/
?SignatureVersion=2
&Action=PutMetricAlarm
&Version=2009-05-15
&Namespace=AWS/EC2
&MetricName=CPUUtilization
&Dimension.member.1.Name=instance-id
&Dimension.member.1.Value=i-abc123
&Period=86400
&Statistic=Average
API Version 2010-08-01
117
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch アラームへのアクションの追加
&AlarmName=Terminate-EC2-Instance
&ComparisonOperator=LessThanThreshold
&Threshold=10
&EvaluationPeriods=4
&StartTime=2009-01-16T00:00:00
&EndTime=2009-01-16T00:02:00
&Timestamp=2009-01-08-18
&AWSAccessKeyId=XXX YOUR ACCESS KEY XXX
&Signature=%XXX YOUR SIGNATURE XXX%3D
&AlarmActions.member.1=arn:aws:automate:us-east-1:ec2:terminate
API を使用してインスタンスを復旧するアラームを作成するには
次のリクエストの例では、Amazon EC2 インスタンスを復旧するアラームの作成方法を示します。
•
http://monitoring.amazonaws.com/
?SignatureVersion=2
&Action=PutMetricAlarm
&Version=2009-05-15
&Namespace=AWS/EC2
&MetricName=StatusCheckFailed_System
&Dimension.member.1.Name=instance-id
&Dimension.member.1.Value=i-abc123
&Period=60
&Statistic=Average
&AlarmName=Terminate-EC2-Instance
&ComparisonOperator=GreaterThanThreshold
&Threshold=0
&EvaluationPeriods=2
&StartTime=2009-01-16T00:00:00
API Version 2010-08-01
118
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch アラームアクションシナリオ
&EndTime=2009-01-16T00:02:00
&Timestamp=2009-01-08-18
&AWSAccessKeyId=XXX YOUR ACCESS KEY XXX
&Signature=%XXX YOUR SIGNATURE XXX%3D
&AlarmActions.member.1=arn:aws:automate:us-east-1:ec2:recover
Amazon CloudWatch アラームアクションシナリオ
Amazon Elastic Compute Cloud(Amazon EC2)コンソールを使用すると、特定の条件が満たされたと
きに Amazon EC2 インスタンスを停止または終了するアラームアクションを作成できます。アラーム
アクションが設定されるコンソールページを示す次のスクリーンキャプチャで、設定に番号を振りまし
た。また、適切なアクションの作成をサポートするため、後続のシナリオ内の設定にも番号を振りまし
た。
シナリオ 1: アイドル状態にある開発用およびテスト用のインス
タンスを停止する
ソフトウェアの開発またはテストに使用されるインスタンスが 1 時間以上アイドル状態になっている場
合、該当するインスタンスを停止するアラームを作成します。
設
定
値
停止
最大
CPUUtilization
<=
API Version 2010-08-01
119
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch アラームアクションシナリオ
設
定
値
10%
60 分
1
シナリオ 2: アイドル状態のインスタンスを停止する
インスタンスが 24 時間にわたってアイドル状態になっている場合、インスタンスを停止し、E メール
を送信するアラームを作成します。
設
定
値
停止および E メール
平均
CPUUtilization
<=
5%
60 分
24
シナリオ 3: トラフィック量が異常に多いウェブサーバーを停止
する
インスタンスの 1 日あたりのアウトバウンドネットワークトラフィックが 10 GB を超えた場合、E メー
ルを送信するアラームを作成します。
設
定
値
E メール
合計
API Version 2010-08-01
120
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch アラームアクションシナリオ
設
定
値
NetworkOut
>
10 GB
1日
1
シナリオ 4: トラフィック量が異常に多いウェブサーバーを停止
する
アウトバウンドトラフィックが 1 時間あたり 1 GB を超えた場合、インスタンスを停止してテキスト
メッセージ(SMS)を送信するアラームを作成します。
設
定
値
SMS を停止および送信する
合計
NetworkOut
>
1 GB
1 時間
1
シナリオ 5: メモリリークが発生しているインスタンスを停止す
る
トラブルシューティングに使えるアプリケーションログを取得できるよう、メモリ使用率が 90% 以上
になった場合にインスタンスを停止するアラームを作成します。
API Version 2010-08-01
121
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch アラームアクションシナリオ
Note
MemoryUtilization メトリックスはカスタムメトリックスです。MemoryUtilization メトリックス
を使用するには、Amazon EC2 インスタンスのモニタリングスクリプト (p. 187) をインストー
ルする必要があります。
設
定
値
停止
最大
MemoryUtilization
>=
90%
1分
1
シナリオ 6: 障害のあるインスタンスを停止する
ステータスチェック(5 分間隔で実行)に 3 回続けて失敗したインスタンスを停止するアラームを作成
します。
設
定
値
停止
平均
StatusCheckFailed_System
>=
1
15 分
1
API Version 2010-08-01
122
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch アラームアクションシナリオ
シナリオ 7: バッチ処理ジョブが完了したときにインスタンスを
終了する
バッチジョブを実行するインスタンスが結果データを送信しなくなったときに、そのインスタンスを終
了するアラームを作成します。
設
定
値
削除
最大
NetworkOut
<=
100,000 バイト
5分
1
また、前述シナリオは、Amazon CloudWatch コンソールを使用して実行することもできます。Amazon
EC2 コンソールの付番済みの設定および前に説明したシナリオに対応するように、Amazon CloudWatch
コンソールでの設定にも番号を振りました。したがって、比較しながら、適切なアクションを伴なうア
ラームを作成できます。
API Version 2010-08-01
123
Amazon CloudWatch 開発者ガイド
予想請求額のモニタリング
Amazon CloudWatch で予想請求額をモニタリング
する
Abstract
Amazon CloudWatch を使用して予想請求額をモニタリングする方法について説明します。
予想される Amazon Web Services (AWS)の請求額を Amazon CloudWatch を用いてモニタリングで
きます。ご使用の AWS アカウントに対する予想請求額のモニタリングを有効にすると、予想請求額が
計算されて、メトリックスデータとして Amazon CloudWatch に 1 日複数回送信されます。メトリック
スデータは 14 日間保存されます。請求メトリックスデータは 米国東部(バージニア北部リージョン)
に保存され、世界全体の請求額として表されます。このデータには、使用した AWS の各サービスに対
する予想請求額と、AWS 全体の予想請求額が含まれています。請求額が所定のしきい値を超過したと
きにメールでアラートを受け取るようにすることができます。これらのアラートは Amazon CloudWatch
によってトリガーされ、Amazon Simple Notification Service (Amazon SNS)通知により送信されま
す。
このメトリックスは無料で提供されています。各お客様につき毎月 10 件の Amazon CloudWatch アラー
ムと 1,000 件の Amazon SNS メール通知が無料で利用できます。追加のアラームまたはメール通知は
AWS の標準レートで課金されます。詳細については、「Amazon CloudWatch 料金表」および「Amazon
SNS 料金表」を参照してください。
Topics
• 予想請求額のモニタリングを有効にする (p. 125)
• 請求アラームの作成 (p. 125)
API Version 2010-08-01
124
Amazon CloudWatch 開発者ガイド
予想請求額のモニタリングを有効にする
• 請求アラームの編集 (p. 131)
• アラーム状態の確認 (p. 132)
• 請求アラームの削除 (p. 132)
予想請求額のモニタリングを有効にする
予想請求額のアラームを作成する前に、モニタリングを有効にする必要があります。モニタリングを有
効にすると、請求アラームを作成するために使用するメトリックスデータが作成されます。Amazon
CloudWatch コンソールまたはコマンドラインインターフェイス(CLI)を使用して請求データを表示
し、アラームを作成するのに約 15 分かかります。AWS アカウントの請求アラートを有効にするには、
アカウント所有者(「ルートユーザー」)としてサインインする必要があります。請求メトリックスを
有効にすると、データの収集を無効にできなくなりますが、作成したアラームは削除できます。
予想請求額のモニタリングを有効にするには
1.
2.
3.
https://console.aws.amazon.com/billing/home?# にある Billing and Cost Management コンソールを
開きます。
所定のスペースに、ユーザー名とパスワードを入力し、[Sign in using our secure server] をクリッ
クします。
ナビゲーションペインで [Preferences] をクリックし、[Receive Billing Alerts] チェックボックスを
選択します。
請求アラームの作成
Amazon CloudWatch コンソールまたは AWS コマンドラインインターフェイス(CLI)を用いて、請求
アラームを作成します。1 つのアラームに対して 1 つ以上のアクションを適用できます。あるいは、指
定したサービスの請求額が一定額を超えたときにアラームがトリガーされてメールを受信する設定にす
ることもできます。
API Version 2010-08-01
125
Amazon CloudWatch 開発者ガイド
請求アラームの作成
Amazon CloudWatch コンソールを用いて請求アラームを作成するには
この例では、過去 14 日間の Amazon EC2 の請求額をグラフ化し、請求額が 200 USD を超えたときに
メールを送信するアラームを設定します。
1.
2.
3.
4.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
ナビゲーションペインで [Alarms] をクリックし、[Alarms] ペインで [Create Alarm] をクリックし
ます。
[CloudWatch Metrics by Category] ペインの [Billing Metrics] で、[By Service] をクリックします。
[Billing] > [By Service] でサービス(例: Amazon EC2)を選択すると、下のペインに請求データが
グラフ化されます。
API Version 2010-08-01
126
Amazon CloudWatch 開発者ガイド
請求アラームの作成
Note
アカウントに対する請求データを表示させる方法は、[Total Estimated Charges]、[By
Service]、または [By Linked Account] という複数の方法があります。一括請求(コンソリ
デーティッドビリング)のアカウントの場合、支払いアカウントでログインすると、リン
クされている各アカウントの請求データを見ることができます。リンクされているそれぞ
れのアカウントと一括請求アカウントのどちらに対しても、予想請求合計額とサービスご
との予想請求額のデータを見ることができます。
5.
[Next] をクリックし、[Alarm Threshold] の [Name] フィールドに一意の分かりやすいアラーム名
(例: 「My Estimated Charges」(予想請求額))を入力します。
API Version 2010-08-01
127
Amazon CloudWatch 開発者ガイド
請求アラームの作成
6.
7.
[Description] ボックスに、アラームの説明(例: Estimated Monthly Charges)を入力します。
[Whenever charges for] の [is] ドロップダウンリストで[>=] (以上)を選択し、[USD] ボックスに
金額(例: 200)を設定します。この金額を超えるとアラームがトリガーされ、メールが送信され
ます。
Note
[Alarm Preview] の [Estimated Monthly Charges] サムネイルグラフで予想請求額を確認し
て、アラームに対して適切なしきい値を設定することができます。
8.
[Actions] で、[Notification] をクリックします。次に、[Whenever this alarm] ドロップダウンリスト
で [State is ALARM] をクリックします。
9.
[Send notification to] ボックスで、既存の Amazon SNS トピックを選択します。
Amazon SNS トピックを新規作成する場合は、[New list] をクリックし、[Send notification to] ボッ
クスに新しい Amazon SNS トピックの名前(例: CFO)を入力します。[Email list] ボックスに、
メール通知の送信先メールアドレス(例: [email protected])を入力します。
Note
Amazon SNS トピックを新規作成すると、トピックに関連づけられたメールアカウントに
サブスクライブの確認メールが届きます。今後、アラームがトリガーされたときにメール
通知を受信するためには、サブスクライブを確認する必要があります。
API Version 2010-08-01
128
Amazon CloudWatch 開発者ガイド
請求アラームの作成
10. [Create Alarm] をクリックします。
Important
受信者のリストにメールアドレスを追加したか、トピックを新規作成した場合、アラーム
を作成した直後に、Amazon SNS から追加した各メールアドレスにサブスクライブの確認
メールが送信されます。そのメールに示されているリンクをクリックしてサブスクライブ
を確認してください。アラート通知は確認されたアドレスにのみ送信されます。
11. CloudWatch コンソールで請求アラームを表示するには、ナビゲーションペインの [Alarms] で
[Billing] をクリックします。
CLI を使用して請求アラームを作成するには
Amazon CloudWatch コンソールを用いる以外に、AWS コマンドラインインターフェイス(CLI)を用
いて、AWS 内で使用中のあらゆるサービスに対応する請求アラームを作成することもできます。1 つ
のアラームに対して 1 つ以上のアクションを適用できます。あるいは、指定したサービスの請求額が一
定額を下回ったときにアラームがトリガーされてメールを受信する設定にすることもできます。
次の手順の例では、Amazon EC2 に対する過去 1 ヶ月間の予想請求額が 50 USD を超えるときにメー
ルメッセージを送信するアラームを作成します。
1. コマンドプロンプトで「aws cloudwatch list-metrics」と入力して、使用している AWS の
サービスで利用可能な Amazon CloudWatch メトリックスを一覧表示します。
2. メトリックスのリストで、AWS/Billing 名前空間を持つ請求メトリックスを確認します。これらのメ
トリックスが、請求アラームの作成に使用できる請求メトリックスです。
3. コマンドプロンプトで、次のコマンドを入力します。
API Version 2010-08-01
129
Amazon CloudWatch 開発者ガイド
請求アラームの作成
aws cloudwatch put-metric-alarm --alarm-name ec2billing --comparison-operator
GreaterThanOrEqualToThreshold --evaluation-periods 1 --metric-name Estimated
Charges --namespace AWS/Billing --dimensions Name=Currency,Value=USD" -period 21600 --statistic Maximum --threshold 50 --actions-enabled --alarmactions arn:aws:sns:us-east-1:111111111111:NotifyMe
各パラメータの意味は次のとおりです。
--alarm-name は、アラームに割り当てる名前です。
--comparison-operator は、GreaterThanOrEqualToThreshold、GreaterThanThreshold、
LessThanThreshold、LessThanOrEqualToThreshold のいずれかの値になります。
--evaluation-periods は、指定されたしきい値と比較されるデータの期間数です(例: 1 期間 = 6 時
間)。
--metric-name は、利用可能な請求メトリックスの 1 つです(例: EstimatedCharges)。
--namespace は、メトリックスの名前空間(例: AWS/Billing)です。
--dimensions は、メトリックスと関連付けられています(例: 通貨 = USD)。
--period は、Amazon CloudWatch メトリックスが収集される時間枠(秒単位)です。この例では、
21600 と入力します(6 時間 × 60 分 × 60 秒)。
--statistic は、SampleCount、Average, Sum、Minimum、Maximum のいずれかの値です。
--threshold は、使用する金額(ドル単位)です(例: 50)。
--actions-enabled は、アラームがアクションを行うかどうかを表します。--alarm-actions を無視する
には、--no-actions-enabled を用います。
--alarm-actions は、このアラームがトリガーされたときに実行されるアクションのリストです。各ア
クションは Amazon リソースネーム(ARN)として指定されます。この例では、Amazon SNS を使
用してメールが届くようにします。
Note
Amazon SNS コントロールでアラームに使用される Amazon SNS トピックの ARN を検索
できます。
a. Amazon SNS コンソール(https://console.aws.amazon.com/sns/)を開きます。
b. 必要に応じてリージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョ
ンを選択します。詳細については、Regions and Endpoints を参照してください。
API Version 2010-08-01
130
Amazon CloudWatch 開発者ガイド
請求アラームの編集
c. ナビゲーションペインの [My Topics] で、アラームにメールを送信させるトピックを選択
します。
d. ARN は [Topic Details] ペインの [Topic ARN] フィールドに表示されます。
請求アラームの編集
Amazon CloudWatch コンソールまたは AWS コマンドラインインターフェイス(CLI)を用いて、既存
の請求アラームを編集したり変更したりできます。
Amazon CloudWatch コンソールを使用して請求アラームを編
集するには
1.
2.
3.
4.
5.
AWS マネジメントコンソール にサインインした後、 https://console.aws.amazon.com/cloudwatch/
にある CloudWatch コンソールを開きます。
必要に応じて、リージョンを米国東部(バージニア)に変更します。請求メトリックスデータは
米国東部(バージニア北部リージョン) に保存され、世界全体の請求額として表されます。詳細
については、「Regions and Endpoints」を参照してください。
ナビゲーションペインの [Alarms] で [Billing] をクリックします。
アラームのリストで、変更するアラームの横にあるボックスを選択し、[Modify] をクリックしま
す。
[Alarm Threshold] の [USD] ボックスで金額(例: 400)を設定します。この金額を超えるとアラー
ムがトリガーされ、メールが送信されます。続いて、ナビゲーションペインの [Save Changes] を
クリックします。
CLI を使用して請求アラームを編集するには
1. コマンドプロンプトで「aws cloudwatch describe-alarms」と入力し、Enter キーを押します。
2. リストから、編集するアラームを検索します。
3. コマンドプロンプトで、「aws cloudwatch put-metric-alarm --alarm-name <alarm name>
>」と入力します。ここで、<alarm_name> は編集するアラームの名前です。アラームで編集するす
べてのパラメータを指定し、必要に応じて値を変更します。
API Version 2010-08-01
131
Amazon CloudWatch 開発者ガイド
アラーム状態の確認
アラーム状態の確認
Amazon CloudWatch コンソールまたは AWS コマンドラインインターフェイス(CLI)を使用して請求
アラームの状態を確認することができます。
Amazon CloudWatch コンソールを用いてアラームの状態を
チェックするには
1. AWS マネジメントコンソール にサインインした後、 https://console.aws.amazon.com/cloudwatch/
にある CloudWatch コンソールを開きます。
2. 必要に応じて、リージョンを米国東部(バージニア)に変更します。請求メトリックスデータは 米
国東部(バージニア北部リージョン) に保存され、世界全体の請求額として表されます。
ナビゲーションバーから、必要に応じてリージョンを選択します。詳細については、Regions and
Endpoints を参照してください。
3. ナビゲーションペインの [Alarms] で [Billing] をクリックします。
CLI を用いてアラームの状態をチェックするには
• コマンドプロンプトで「aws cloudwatch describe-alarms」と入力し、Enter キーを押します。
次にリストから、チェックする AWS/Billing アラームを見つけます。
請求アラームの削除
Amazon CloudWatch コンソールまたは AWS コマンドラインインターフェイス(CLI)を用いて、不要
になった請求アラームを削除することができます。
Amazon CloudWatch コンソールを使用して請求アラームを削
除するには
1. AWS マネジメントコンソール にサインインした後、 https://console.aws.amazon.com/cloudwatch/
にある CloudWatch コンソールを開きます。
2. 必要に応じて、リージョンを米国東部(バージニア)に変更します。請求メトリックスデータは 米
国東部(バージニア北部リージョン) に保存され、世界全体の請求額として表されます。
ナビゲーションバーから、必要に応じてリージョンを選択します。詳細については、Regions and
Endpoints を参照してください。
API Version 2010-08-01
132
Amazon CloudWatch 開発者ガイド
請求アラームの削除
3. ナビゲーションペインの [Alarms] で [Billing] をクリックします。
4. アラームのリストで、削除するアラームの横にあるボックスを選択し、[Delete] をクリックします。
5. [Delete Alarms] ダイアログボックスで、[Yes, Delete] をクリックします。
CLI を使用して請求アラームを削除するには
1. コマンドプロンプトで「aws cloudwatch describe-alarms」と入力し、Enter キーを押します。
2. リストから、削除するアラームを見つけます。
3. コマンドプロンプトで、「aws cloudwatch delete-alarms -–alarm-names <alarm_name>
>」と入力します。ここで、<alarm_name> は削除するアラームの名前です。
4. Are you sure you want to delete these Alarms? プロンプトで「Y」と入力します。
API Version 2010-08-01
133
Amazon CloudWatch 開発者ガイド
ログファイルのモニタリング
Abstract
CloudWatch Logs を使って Amazon Elastic Compute Cloud および AWS CloudTrail のログファイルを監視、保存、
アクセスするために知る必要がある基礎、概念、用語について説明します。
Amazon CloudWatch Logs を使用して、Amazon Elastic Compute Cloud (Amazon EC2) インスタンス、
AWS CloudTrail、またはその他のソースのログファイルの監視、保存、アクセスができます。その後、
Amazon CloudWatch コンソール、AWS CLI の CloudWatch Logs コマンド、CloudWatch Logs API、
または CloudWatch Logs SDK を使用して、CloudWatch Logs から関連ログデータを取得できます。
CloudWatch Logs を使用して次のことができます。
• Amazon EC2 インスタンスのログをリアルタイムでモニタリングする— CloudWatch Logs で、ログ
データを使用してアプリケーションとシステムをモニタリングできます。たとえば、アプリケーショ
ンログに存在するエラーの数をトラッキングし、エラー率が指定のしきい値を超えたときに管理者に
通知を送ることができます。お客様のログが CloudWatch Logs によるモニタリングに使用されるの
で、コードの変更は不要です。たとえば、アプリケーションログの特定のリテラルターム(例:
「NullReferenceException」)をモニタリングしたり、ログデータの特定の場所でリテラルターム
(例: Apache アクセスログの「404」ステータスコード)の発生数をカウントしたりできます。検索
した語句が見つかると、CloudWatch Logs は指定された CloudWatch メトリックスにデータをレポー
トします。
Linux を実行する Amazon EC2 インスタンスで CloudWatch Logs を開始する方法については、
「CloudWatch Logs の使用開始 (p. 135)」を参照してください。
Microsoft Windows を実行する Amazon EC2 インスタンスで CloudWatch Logs を開始する方法につ
いては、『Microsoft Windows インスタンスの Amazon EC2 ユーザーガイド』の「CloudWatch への
パフォーマンスカウンタの送信と CloudWatch Logs へのログの送信」を参照してください。
• AWS CloudTrail のログに記録されたイベントのモニタリング— CloudWatch にアラームを作成して、
CloudTrail がキャプチャした特定の API アクティビティの通知を受け取り、通知をトラブルシュー
ティングの実行に使用できます。
CloudWatch Logs を開始して CloudTrail にイベントを記録するには、『AWS CloudTrail User Guide』
の「CloudTrail イベントの CloudWatch Logs への送信」を参照してください。
• ログデータをアーカイブする—CloudWatch Logs を使用して耐久性が高いストレージにログデータ
を保存できます。ログの保持設定は、その設定よりも古いログイベントを自動的に削除するように変
更できます。CloudWatch Logs エージェントにより、ローテーションするログデータもローテーショ
API Version 2010-08-01
134
Amazon CloudWatch 開発者ガイド
概念
ンしないログデータも、ホストからログサービスに簡単にすばやく送信できます。その後は、必要な
ときに生のログデータにアクセスできます。
概念
CloudWatch Logs を理解し使用するために重要な用語と概念を、以下に示します。
イベントをログに記録
ログイベントは、モニタリングされているアプリケーションまたはリソースによって記録されたア
クティビティのレコードです。CloudWatch Logs が理解するログイベントレコードには 2 つのプ
ロパティがあります。イベント発生時のタイムスタンプおよび生のイベントメッセージです。イベ
ントメッセージは UTF-8 でエンコードされている必要があります。
ログストリーム
ログストリームは、同じソースを共有する一連のログイベントです。より具体的には、ログスト
リームは一般的に、モニタリングされているアプリケーションインスタンスやリソースから送信さ
れた順序でイベントを表すものです。たとえば、ログストリームは特定のホストの Apache アクセ
スログと関連付けられる場合があります。2 か月後にログストリームのすべてのデータが期限切れ
になった後、空のログストリームは自動的に削除されます。たとえば今日、ログの保持期間を 2 か
月に設定したログストリームを作成します。このログストリームにログデータを何も送らなけれ
ば、2 か月が経過した後、ログストリームは自動的に削除されます。
ロググループ
ロググループは、保持、監視、アクセス制御について同じ設定を共有するログストリームのグルー
プを定義します。各ログストリームは、1 つのロググループに属している必要があります。たとえ
ば、Apache ウェブサーバー群の一般的なロググループは、MyWebsite.com/Apache/access_log
または MyWebsite.com/Apache/error_log のような形になっています。
メトリックスフィルタ
メトリックスフィルタは、サービスが取り込まれたイベントからメトリックス監視を展開し、
CloudWatch メトリックスのデータポイントに変換する方法を示すために使用できます。メトリッ
クスフィルタはロググループに割り当てられ、ロググループに割り当てられたすべてのフィルタは
そのログストリームに適用されます。
保持設定
保持設定は、CloudWatch Logs にログイベントを保持する期間を指定するために使用できます。期
限切れのログイベントは自動的に削除されます。メトリックスフィルタと同様に、保持設定はログ
グループに割り当てられ、ロググループに割り当てられた保持期間はそのログストリームに適用さ
れます。
Topics
• CloudWatch Logs の使用開始 (p. 135)
• ログデータの表示 (p. 156)
• ログの保持期間の変更 (p. 156)
• ログデータの検索およびフィルタリング (p. 157)
• サブスクリプションを使用したログデータのリアルタイム処理 (p. 176)
CloudWatch Logs の使用開始
Abstract
Linux を実行する EC2 インスタンスに CloudWatch Logs エージェントをインストールするために必要な前提条件
を説明します。
API Version 2010-08-01
135
Amazon CloudWatch 開発者ガイド
CloudWatch Logs エージェントの前提条件
Linux または Windows Server を実行する Amazon EC2 インスタンスのログデータおよび AWS CloudTrail
から記録されたイベントを発行できます。CloudWatch Logs はどのリージョンのリソースからのログ
でも使用できますが、表示できるのは 米国東部(バージニア北部リージョン), 米国西部(オレゴン
リージョン), 欧州(アイルランド)リージョン 欧州(フランクフルト)リージョン, アジアパシフィッ
ク(シンガポールリージョン), アジアパシフィック(シドニー) リージョン, or アジアパシフィック
(東京)リージョン の CloudWatch コンソールのログデータのみです。
このセクションでは Amazon Linux、Ubuntu Server、CentOS、Red Hat Enterprise Linux を実行する
CloudWatch Logs インスタンスに Amazon EC2 エージェントをインストールするために必要なステッ
プを説明します。
Microsoft Windows を実行する Amazon EC2 インスタンスで CloudWatch Logs を開始するには、
『Microsoft Windows インスタンスの Amazon EC2 ユーザーガイド』の「CloudWatch へのパフォーマ
ンスカウンタの送信と CloudWatch ログへのログの送信」を参照してください。
CloudWatch Logs を開始して CloudTrail にイベントを記録するには、『AWS CloudTrail User Guide』
の「CloudTrail イベントの CloudWatch Logs への送信」を参照してください。
CloudWatch Logs エージェントの前提条件
CloudWatch Logs エージェントには Python および Linux の以下のバージョンが必要です。
•
•
•
•
•
Python バージョン 2.6、2.7、3.0、または 3.3
Amazon Linux バージョン 2014.03.02
Ubuntu Server バージョン 12.04 または 14.04
CentOS バージョン 6、6.3、6.4、または 6.5
Red Hat Enterprise Linux (RHEL) バージョン 6.5 または 7.0
Topics
• クイックスタート: 既存の EC2 インスタンスに CloudWatch Logs エージェントをインストールし
て設定する (p. 136)
• クイックスタート: 新規 EC2 インスタンスに CloudWatch Logs エージェントをインストールして
設定する (p. 140)
• クイックスタート: AWS OpsWorks および Chef を使用して CloudWatch Logs エージェントをイン
ストールする (p. 143)
• クイックスタート: AWS CloudFormation を使用してログデータを CloudWatch Logs に送信す
る (p. 148)
• CloudWatch Logs エージェントのステータスをレポートします。 (p. 149)
• CloudWatch Logs エージェントの開始 (p. 149)
• CloudWatch Logs エージェントの停止 (p. 149)
• CloudWatch Logs エージェントのリファレンス (p. 150)
クイックスタート: 既存の EC2 インスタンスに
CloudWatch Logs エージェントをインストールして
設定する
Abstract
既存の Amazon EC2 インスタンスに Amazon CloudWatch のログエージェントをインストールして設定します。
API Version 2010-08-01
136
Amazon CloudWatch 開発者ガイド
クイックスタート: 既存の EC2 インスタンスに CloudWatch
Logs エージェントをインストールして設定する
既存の EC2 インスタンスで Amazon CloudWatch Logs エージェントインストーラを使用して、
CloudWatch Logs エージェントをインストールして設定できます。インストールが完了すると、エー
ジェントは開始を確認し無効にされるまで実行し続けます。
エージェントに加えて、AWS CLI、CloudWatch Logs、SDK、または CloudWatch Logs API を使用し
てログデータを発行できます。AWS CLI は、コマンドラインまたはスクリプトでのデータの発行に適
しています。CloudWatch Logs SDK は、アプリケーションから直接、または独自のログ発行アプリケー
ションを構築してログデータを発行する場合に適しています。
ステップ 1: IAM ロールまたは CloudWatch Logs ユーザーを設
定する
CloudWatch Logs エージェントは IAM ロールとユーザーをサポートしています。インスタンスに関連
付けられた IAM ロールがすでに存在する場合、その下に IAM ポリシーが含まれていることを確認して
ください。インスタンスに関連付けられた IAM ロールがまだ存在しない場合、次のステップで IAM 認
証情報が必要になります。既存のインスタンスに IAM ロールを割り当てることはできません。新しい
インスタンスを起動するときにのみロールを指定できます。
IAM のユーザーとポリシーの詳細については、『IAM を使用する』の「IAM ユーザーとグループ」と
「IAM ポリシーを管理する」を参照してください。
IAM ロールまたは CloudWatch Logs ユーザーを設定するには
1.
2.
3.
4.
https://console.aws.amazon.com/iam/ にある IAM コンソールを開きます。
ナビゲーションペインで [Roles] をクリックし、[Role Name] 列で IAM ロールをクリックします。
[Inline Policies] の [Create Role Policy] をクリックします。
[Set Permissions] ページで、[Custom Policy] をクリックし、次に [Select] をクリックします。
5.
6.
カスタムポリシーの作成の詳細については、『Linux インスタンス用 Amazon EC2 ユーザーガイ
ド』の「Amazon EC2 の IAM ポリシー」を参照してください。
[Review Policy] ページで、[Policy Name] フィールドにポリシー名を入力します。
[Policy Document] フィールドに次のポリシーをコピーして貼り付けます。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"logs:CreateLogGroup",
"logs:CreateLogStream",
"logs:PutLogEvents",
"logs:DescribeLogStreams"
],
"Resource": [
"arn:aws:logs:*:*:*"
]
}
]
}
7.
[Apply Policy] をクリックします。
API Version 2010-08-01
137
Amazon CloudWatch 開発者ガイド
クイックスタート: 既存の EC2 インスタンスに CloudWatch
Logs エージェントをインストールして設定する
ステップ 2: 既存の Amazon EC2 インスタンスに CloudWatch
Logs をインストールして設定する
CloudWatch Logs エージェントのインストール手順は、Amazon EC2 インスタンスが Amazon Linux、
Ubuntu、CentOS、Red Hat のどれを実行しているかによって異なります。インスタンスの Linux の
バージョンに適切な手順を使用してください。
既存の Amazon Linux インスタンスに CloudWatch Logs をインストールして設定するには
Amazon Linux AMI 2014.09 から、awslogs パッケージを使用した RPM のインストールに CloudWatch
Logs エージェントが使用可能です。それ以前のバージョンの Amazon Linux は、sudo yum update
-y コマンドを使用してインスタンスを更新することで awslogs パッケージにアクセスできます。
CloudWatch Logs インストーラを使用する代わりに awslogs パッケージを RPM としてインストールす
ると、インスタンスは Amazon から通常の更新とパッチのパッケージを受信します。CloudWatch Logs
エージェントを手動で再インストールする必要はありません。
Caution
以前に Python スクリプトを使用してエージェントをインストールした場合は、RPM インス
トール方法を使用して CloudWatch Logs エージェントを更新しないでください。設定に問題が
発生して CloudWatch Logs エージェントが CloudWatch にログを送信できなくなる恐れがあり
ます。
1.
2.
Amazon Linux インスタンスに接続します。詳細については、『Linux インスタンス用 Amazon EC2
ユーザーガイド』の「インスタンスへの接続」を参照してください。
接続できない場合は、『Linux インスタンス用 Amazon EC2 ユーザーガイド』の「インスタンスへ
の接続に関するトラブルシューティング」を参照してください。
Amazon Linux インスタンスを更新してパッケージリポジトリの最新の変更を取得します。
[ec2-user ~]$ sudo yum update -y
3.
awslogs パッケージをインストールします。
[ec2-user ~]$ sudo yum install -y awslogs
4.
/etc/awslogs/awscli.conf ファイルを編集し、[default] セクションで、ログデータを表示
し認証情報を追加するリージョンを指定します。
region = <us-east-1, us-west-2, eu-west-1, eu-central-1, ap-southeast-1,
ap-southeast-2, or ap-northeast-1>
aws_access_key_id = <YOUR ACCESS KEY>
aws_secret_access_key = <YOUR SECRET KEY>
Note
インスタンスが IAM ロールまたは CloudWatch Logs の適切なアクセス権限を持つユーザー
によって起動されている場合は、ここでの認証情報の追加はオプションです。
5.
/etc/awslogs/awslogs.conf ファイルを編集して追跡するログを設定します。このファイルの
編集の詳細については、「CloudWatch Logs エージェントのリファレンス (p. 150)」を参照してく
ださい。
API Version 2010-08-01
138
Amazon CloudWatch 開発者ガイド
クイックスタート: 既存の EC2 インスタンスに CloudWatch
Logs エージェントをインストールして設定する
6.
awslogs サービスを開始します。
[ec2-user ~]$ sudo service awslogs start
Starting awslogs:
[
OK
]
7.
(オプション)/var/log/awslogs.log ファイルでサービス開始時に記録されたエラーがあるか
どうか確認します。
8.
(オプション)システム起動時に毎回 awslogs サービスを起動する場合は、次のコマンドを実行
します。
[ec2-user ~]$ sudo chkconfig awslogs on
9.
エージェントが実行されてしばらくしたら、CloudWatch コンソールに新しく作成されたロググ
ループとログストリームを確認してください。
ログを表示するには、「ログデータの表示 (p. 156)」を参照してください。
既存の Ubuntu Server、CentOS、Red Hat のインスタンスに CloudWatch Logs をインストー
ルして設定するには
Ubuntu Server、CentOS、または Red Hat を実行する AMI を使用している場合、次の手順でインスタ
ンスに CloudWatch Logs エージェントを手動インストールします。
1.
2.
EC2 インスタンスに接続します。詳細については、『Linux インスタンス用 Amazon EC2 ユーザー
ガイド』の「インスタンスへの接続」を参照してください。
接続できない場合は、『Linux インスタンス用 Amazon EC2 ユーザーガイド』の「インスタンスへ
の接続に関するトラブルシューティング」を参照してください。
CloudWatch Logs エージェントインストーラを実行します。インスタンスのコマンドプロンプト
を開き、次のコマンドを入力して、表示される手順に従います。
Note
Ubuntu では、次のコマンドを実行する前に apt-get update を実行してください。
wget https://s3.amazonaws.com/aws-cloudwatch/downloads/latest/awslogs-agentsetup.py
sudo python ./awslogs-agent-setup.py --region us-east-1
Note
us-east-1, us-west-2, eu-west-1, eu-central-1, ap-southeast-1, ap-southeast-2, or
ap-northeast-1 リージョンを指定することで CloudWatch Logs エージェントをインストー
ルできます。
CloudWatch Logs エージェントのインストーラはセットアップ時に特定の情報が必要です。開始
する前に、モニタリングするログファイルとそのタイムスタンプ形式を知っておく必要がありま
す。また、次の情報を準備する必要があります。
API Version 2010-08-01
139
Amazon CloudWatch 開発者ガイド
クイックスタート: 新規 EC2 インスタンスに CloudWatch
Logs エージェントをインストールして設定する
項目
説明
AWS アクセスキー ID
IAM ロールを使用する場合は Enter キーを押します。それ以外の場合
は、AWS アクセスキー ID を入力します。
AWS 秘密鍵
IAM ロールを使用する場合は Enter キーを押します。それ以外の場合
は、AWS シークレットアクセスキーを入力します。
デフォルトリージョン名 Enter キーを押します。デフォルトは us-east-1 です。us-east-1, uswest-2, eu-west-1, eu-central-1, ap-southeast-1, ap-southeast-2, or apnortheast-1 に設定できます。
デフォルト出力形式
空白にしたまま Enter キーを押します。
アップロードするログ
ファイルのパス
送信するログデータを含むファイルの場所です。インストーラはパス
の候補を表示します。
送信先ロググループ名
ロググループの名前です。インストーラはロググループ名の候補を表
示します。
送信先ログストリーム名 デフォルトでは、ホストの名前です。インストーラはホスト名の候補
を表示します。
タイムスタンプ形式
指定ログファイル内のタイムスタンプ形式を指定します。独自の形式
を指定するには、[custom] を選択します。
初期位置
データのアップロード方式です。データファイルのすべてをアップ
ロードする場合は [start_of_file] に設定します。新しく付け加えられた
データのみをアップロードする場合は [end_of_file] に設定します。
これらの手順が完了すると、インストーラは別のログファイルを設定するかどうか尋ねてきます。
各ログファイルについて何回でもプロセスを実行できます。他にモニタリングするログファイルが
ない場合、別のログをセットアップするようにインストーラに求められた時に [N] を選択します。
エージェント設定ファイルの設定の詳細については、「CloudWatch Logs エージェントのリファ
レンス (p. 150)」を参照してください。
Note
複数のログソースから単一のログストリームにデータを送信する設定はサポートされてい
ません。
3.
エージェントが実行されてしばらくしたら、CloudWatch コンソールに新しく作成されたロググ
ループとログストリームを確認してください。
ログを表示するには、「ログデータの表示 (p. 156)」を参照してください。
クイックスタート: 新規 EC2 インスタンスに
CloudWatch Logs エージェントをインストールして
設定する
Abstract
新規 EC2 インスタンスの起動時に CloudWatch Logs エージェントをインストールして設定します。
API Version 2010-08-01
140
Amazon CloudWatch 開発者ガイド
クイックスタート: 新規 EC2 インスタンスに CloudWatch
Logs エージェントをインストールして設定する
Amazon EC2 ユーザーデータは、インスタンスの起動時にパラメータ情報を渡す Amazon EC2 の機能
です。これを使用してインスタンスに CloudWatch Logs エージェントをインストールして設定します。
CloudWatch Logs エージェントのインストール情報と設定情報を Amazon EC2 に渡すには、Amazon
S3 バケットのようなネットワークの場所に設定ファイルを用意します。以下の手順を実行して、新し
い Amazon EC2 インスタンスを起動してログを有効にします。
新しいインスタンスを起動して CloudWatch Logs を有効にするには
1.
ロググループとログストリームをすべて記述したエージェントの設定ファイルを作成します。
Amazon Linux 用エージェント設定ファイルのサンプル
[general]
state_file = /var/awslogs/state/agent-state
[/var/log/messages]
file = /var/log/messages
log_group_name = /var/log/messages
log_stream_name = {instance_id}
datetime_format = %b %d %H:%M:%S
Ubuntu 用エージェント設定ファイルのサンプル
[general]
state_file = /var/awslogs/state/agent-state
[/var/log/syslog]
file = /var/log/syslog
log_group_name = /var/log/syslog
log_stream_name = {instance_id}
datetime_format = %b %d %H:%M:%S
エージェント設定ファイルには、モニタリングするログファイルとそれをアップロードするター
ゲットのロググループおよびログストリームが記述されています。エージェントはこの設定ファイ
ルを使用して記述されたすべてのログファイルのモニタリングおよびアップロードを開始します。
エージェント設定ファイルの設定の詳細については、「CloudWatch Logs エージェントのリファ
レンス (p. 150)」を参照してください。
AMI ファイルシステム、パブリックにアクセス可能な http/https、または Amazon S3(たとえば、
s3://myawsbucket/my-config-file)のいずれかの場所に、テキストファイル(たとえば、awslogs.cfg)
として保存します。 Amazon S3 バケットへのアクセス権限の割り当ての詳細については、『Amazon
Simple Storage Service 開発者ガイド』の「ポリシーでのリソースの指定」を参照してください。
Note
複数のログソースから単一のログストリームにデータを送信する設定はサポートされてい
ません。
2.
3.
4.
5.
https://console.aws.amazon.com/iam/ にある IAM コンソールを開きます。
ナビゲーションペインで [Policies] をクリックし、次にコンテンツペインで [Create Policy] をクリッ
クします。
[Create Policy] ページの [Create Your Own Policy] で、[Select] をクリックします。カスタムポリ
シーの作成の詳細については、『Linux インスタンス用 Amazon EC2 ユーザーガイド』の「Amazon
EC2 の IAM ポリシー」を参照してください。
[Review Policy] ページで、[Policy Name] フィールドにポリシー名を入力します。
API Version 2010-08-01
141
Amazon CloudWatch 開発者ガイド
クイックスタート: 新規 EC2 インスタンスに CloudWatch
Logs エージェントをインストールして設定する
6.
[Policy Document] フィールドに次のポリシーをコピーして貼り付けます。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"logs:CreateLogGroup",
"logs:CreateLogStream",
"logs:PutLogEvents",
"logs:DescribeLogStreams"
],
"Resource": [
"arn:aws:logs:*:*:*",
"arn:aws:s3:::myawsbucket/*"
]
}
]
}
7.
8.
9.
10.
11.
12.
13.
[Create Policy] をクリックします。
ナビゲーションペインで [Roles] をクリックし、次にコンテンツペインで [Create New Role] をク
リックします。
[Set Role Name] ページで、ロール名を入力し、[Next Step] をクリックします。
[Select Role Type] ページで、[Amazon EC2] の隣にある [Select] をクリックします。
[Attach Policy] ページのテーブルヘッダー([Filter] および [Search] ボックスの横)で、[Policy Type]
ドロップダウンリストをクリックし、[Customer Managed Policies] を選択します。
[Customer Managed Policies] リストで、上で作成した IAM ポリシーを選択し、[Next Step] をク
リックします。
ロールが適切であることを確認したら、[Create Role] をクリックします。
IAM のユーザーとポリシーの詳細については、『IAM を使用する』の「IAM ユーザーとグループ」
と「IAM ポリシーを管理する」を参照してください。
14. https://console.aws.amazon.com/ec2/)にある Amazon EC2 コンソールを開きます。
15. 必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Amazon Web Services General Reference の Regions and Endpoints を
参照してください。
16. Amazon EC2 コンソールダッシュボードで、[Launch Instance] をクリックします。
API Version 2010-08-01
142
Amazon CloudWatch 開発者ガイド
クイックスタート: AWS OpsWorks および Chef を使用し
て CloudWatch Logs エージェントをインストールする
インスタンスの起動の詳細については、『Linux インスタンス用 Amazon EC2 ユーザーガイド』の
「インスタンスの起動」を参照してください。
17. [Step 1: Choose an Amazon Machine Image (AMI)] ページで起動する Linux インスタンスタイプを
選択し、[Step 2: Choose an Instance Type] ページで [Next: Configure Instance Details] をクリック
します。
Note
cloud-init(http://cloudinit.readthedocs.org/en/latest/index.html)が Amazon Machine Image
(AMI) にインストールされていることを確認してください。Amazon Linux、Ubuntu、RHEL
のインスタンスにはすでに cloud-init が含まれていますが、CentOS および AWS Marketplace
のそのほかの AMI には含まれていない場合があります。
18. [Step 3: Configure Instance Details] ページの [IAM role] フィールドで、上記で作成した IAM ロール
を選択します。
19. [Advanced Details] で [User data] フィールドにスクリプトをコピーして貼り付け、[-c] オプション
を設定ファイルの場所に更新します。
#!/bin/bash
wget https://s3.amazonaws.com/aws-cloudwatch/downloads/latest/awslogs-agentsetup.py
chmod +x ./awslogs-agent-setup.py
./awslogs-agent-setup.py -n -r us-east-1 -c s3://myawsbucket/my-config-file
Note
us-east-1, us-west-2, eu-west-1, eu-central-1, ap-southeast-1, ap-southeast-2, or
ap-northeast-1 リージョンを指定することで CloudWatch Logs エージェントをインストー
ルできます。
20. そのほかインスタンスへの必要な変更を行い、起動設定を確認して [Launch] をクリックします。
21. エージェントが実行されてしばらくしたら、CloudWatch コンソールに新しく作成されたロググ
ループとログストリームを確認してください。
ログを表示するには、「ログデータの表示 (p. 156)」を参照してください。
クイックスタート: AWS OpsWorks および Chef を使
用して CloudWatch Logs エージェントをインストー
ルする
Abstract
EC2 インスタンスをモニタリングするために AWS OpsWorks および CloudWatch Logs で使用する Chef のレシピ
を作成します。
AWS OpsWorks および Chef を使用して CloudWatch Logs エージェントをインストールしログストリー
ムを作成できます。Chef はサードパーティのシステムであり、クラウドインフラストラクチャの自動
化ツールです。Chef は、コンピューターにソフトウェアをインストールして設定するために記述する
「レシピ」と、レシピのコレクションである「クックブック」を使用して、設定とポリシーの配布タス
クを実行します。詳細については、「Chef」を参照してください。
API Version 2010-08-01
143
Amazon CloudWatch 開発者ガイド
クイックスタート: AWS OpsWorks および Chef を使用し
て CloudWatch Logs エージェントをインストールする
以下の Chef のレシピの例は、各 EC2 インスタンスで 1 個のログファイルをモニタリングする方法を
示しています。レシピでは、ロググループとしてスタック名を、ログストリーム名としてインスタンス
のホスト名を使用します。複数のログファイルをモニタリングする場合は、複数のロググループとログ
ストリームを作成するようにレシピを拡張する必要があります。
Topics
• ステップ 1: カスタムレシピを作成する (p. 144)
• ステップ 2: AWS OpsWorks スタックを作成する (p. 146)
• ステップ 3: IAM ロールを拡張する (p. 146)
• ステップ 4: Layer を追加する (p. 147)
• ステップ 5: インスタンスを追加する (p. 147)
• ステップ 6: ログを表示する (p. 147)
ステップ 1: カスタムレシピを作成する
レシピを格納するリポジトリを作成します。AWS OpsWorks は Git および Subversion をサポートして
います。または Amazon S3 にアーカイブを格納できます。クックブックリポジトリの構造は、『AWS
OpsWorks ユーザーガイド』の「クックブックリポジトリ」で説明されています。以下の例では、クッ
クブックの名前を logs と仮定します。install.rb レシピは、CloudWatch Logs エージェントをインス
トールします。クックブックの例は(CloudWatchLogs-Cookbooks.zip)からもダウンロードできます。
以下のコードを含む metadata.rb というファイルを作成します。
#metadata.rb
name
version
'logs'
'0.0.1'
CloudWatch Logs 設定ファイルを作成します。
#config.rb
template "/tmp/cwlogs.cfg" do
cookbook "logs"
source "cwlogs.cfg.erb"
owner "root"
group "root"
mode 0644
end
CloudWatch Logs エージェントをダウンロードし、インストールします。
# install.rb
directory "/opt/aws/cloudwatch" do
recursive true
end
remote_file "/opt/aws/cloudwatch/awslogs-agent-setup.py" do
source "https://s3.amazonaws.com/aws-cloudwatch/downloads/latest/awslogsagent-setup.py"
mode "0755"
end
API Version 2010-08-01
144
Amazon CloudWatch 開発者ガイド
クイックスタート: AWS OpsWorks および Chef を使用し
て CloudWatch Logs エージェントをインストールする
execute "Install CloudWatch Logs agent" do
command "/opt/aws/cloudwatch/awslogs-agent-setup.py -n -r region -c /tmp/cw
logs.cfg"
not_if { system "pgrep -f aws-logs-agent-setup" }
end
Note
上の例で、region を次のいずれかに置き換えてください。us-east-1, us-west-2, eu-west-1,
eu-central-1, ap-southeast-1, ap-southeast-2, or ap-northeast-1。
このレシピでは cwlogs.cfg.erb テンプレートファイルを使用しています。このファイルを変更してどの
ようなファイルを記録するかなど様々な属性を指定できます。これらの属性の詳細については、
「CloudWatch Logs エージェントのリファレンス (p. 150)」を参照してください。
[general]
# Path to the AWSLogs agent's state file. Agent uses this file to maintain
# client side state across its executions.
state_file = /var/awslogs/state/agent-state
## Each log file is defined in its own section. The section name doesn't
## matter as long as its unique within this file.
#
#[kern.log]
#
## Path of log file for the agent to monitor and upload.
#
#file = /var/log/kern.log
#
## Name of the destination log group.
#
#log_group_name = kern.log
#
## Name of the destination log stream.
#
#log_stream_name = {instance_id}
#
## Format specifier for timestamp parsing.
#
#datetime_format = %b %d %H:%M:%S
#
#
[<%= node[:opsworks][:stack][:name] %>]
datetime_format = [%Y-%m-%d %H:%M:%S]
log_group_name = <%= node[:opsworks][:stack][:name].gsub(' ','_') %>
file = <%= node[:cwlogs][:logfile] %>
log_stream_name = <%= node[:opsworks][:instance][:hostname] %>
テンプレートは、スタック設定およびデプロイメント JSON の対応する属性を参照してスタック名お
よびホスト名を取得します。記録するファイルを指定する属性は cwlogs クックブックの default.rb 属
性ファイル(logs/attributes/default.rb)で定義されます。
API Version 2010-08-01
145
Amazon CloudWatch 開発者ガイド
クイックスタート: AWS OpsWorks および Chef を使用し
て CloudWatch Logs エージェントをインストールする
default[:cwlogs][:logfile] = '/var/log/aws/opsworks/opsworks-agent.statist
ics.log'
ステップ 2: AWS OpsWorks スタックを作成する
1.
2.
3.
AWS OpsWorks コンソール(https://console.aws.amazon.com/opsworks/)を開きます。
[Add a Stack] を選択して AWS OpsWorks スタックを作成します。
名前をつけて [Advanced] をクリックします。
4.
5.
[Configuration Management] で [Use custom Chef Cookbooks] を [Yes] に設定します。
[Repository type] リストで使用するリポジトリのタイプを選択します。上記の例を使用する場合
は、[Http Archive] を選択します。
6.
[Repository URL] フィールドに、前のステップで作成したクックブックを保存したリポジトリを入
力します。上記の例を使用する場合は、
「https://s3.amazonaws.com/aws-cloudwatch/downloads/CloudWatchLogs-Cookbooks.zip」
と入力します。
7.
[Add Stack] をクリックし、スタックを作成します。
ステップ 3: IAM ロールを拡張する
AWS OpsWorks インスタンスで CloudWatch Logs を使用するには、インスタンスで使用されている
IAM ロールを拡張する必要があります。
1.
2.
3.
4.
5.
https://console.aws.amazon.com/iam/ にある IAM コンソールを開きます。
ナビゲーションペインで [Policies] をクリックし、次にコンテンツペインで [Create Policy] をクリッ
クします。
[Create Policy] ページの [Create Your Own Policy] で、[Select] をクリックします。カスタムポリ
シーの作成の詳細については、『Linux インスタンス用 Amazon EC2 ユーザーガイド』の「Amazon
EC2 の IAM ポリシー」を参照してください。
[Review Policy] ページで、[Policy Name] フィールドにポリシー名を入力します。
[Policy Document] フィールドに次のポリシーをコピーして貼り付けます。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"logs:CreateLogGroup",
"logs:CreateLogStream",
"logs:PutLogEvents",
"logs:DescribeLogStreams"
],
"Resource": [
"arn:aws:logs:*:*:*"
]
}
]
}
6.
7.
[Create Policy] をクリックします。
ナビゲーションペインで [Roles] をクリックし、コンテンツペインの [Role Name] 列で、AWS
OpsWorks スタックが使用しているインスタンスロールの名前をクリックします。スタックの設定
API Version 2010-08-01
146
Amazon CloudWatch 開発者ガイド
クイックスタート: AWS OpsWorks および Chef を使用し
て CloudWatch Logs エージェントをインストールする
でスタックが使用しているロールが見つかります(デフォルトは aws-opsworks-ec2-role で
す)。
Tip
チェックボックスではなく、ロールの名前をクリックします。
8.
[Permissions] で、[Attach Policy] をクリックします。
9.
[Attach Policy] ページのテーブルヘッダー([Filter] および [Search] ボックスの横)で、[Policy Type]
ドロップダウンリストをクリックし、[Customer Managed Policies] を選択します。
10. [Customer Managed Policies] リストで、上で作成した IAM ポリシーを選択し、[Attach Policy] を
クリックします。
IAM のユーザーとポリシーの詳細については、『IAM を使用する』の「IAM ユーザーとグループ」
と「IAM ポリシーを管理する」を参照してください。
ステップ 4: Layer を追加する
1.
2.
3.
4.
5.
6.
AWS OpsWorks コンソール(https://console.aws.amazon.com/opsworks/)を開きます。
ナビゲーションペインで、[Layers] をクリックします。
コンテンツペインで Layer を選択し、[Add a layer] をクリックします。
コンテンツペインで新しい Layer をクリックし、[Recipes] をクリックします。
[Custom Chef Recipes] セクションには、AWS OpsWorks のライフサイクルイベントに対応した
[Setup]、[Configure]、[Deploy]、[Undeploy]、[Shutdown] という複数のヘッダーがあります。AWS
OpsWorks はインスタンスのライフサイクル内のこれらのキーポイントでイベントをトリガーし、
関連するレシピを実行します。
[Setup] の隣に「logs::config, logs::install」と入力し、[+] をクリックしてリストに追加します。次
に [Save] をクリックします。
AWS OpsWorks はこの Layer の新しいインスタンスごとに、インスタンスの起動直後にこのレシ
ピを実行します。
ステップ 5: インスタンスを追加する
この Layer はインスタンスの設定方法のみを制御しています。次は、Layer にいくつかインスタンスを
追加し、起動する必要があります。
1.
AWS OpsWorks コンソール(https://console.aws.amazon.com/opsworks/)を開きます。
2.
3.
ナビゲーションペインで [Instances] をクリックし、Layer の下にある [+ Instance] をクリックしま
す。
デフォルト設定を受け入れて [Add Instance] をクリックし、Layer にインスタンスを追加します。
4.
行の [Actions] 列で [start] をクリックしてインスタンスを起動します。
AWS OpsWorks が新しい EC2 インスタンスを起動し、CloudWatch Logs を設定します。準備が
できると、インスタンスのステータスがオンラインに変更されます。
ステップ 6: ログを表示する
エージェントが実行されてしばらくしたら、CloudWatch コンソールに新しく作成されたロググループ
とログストリームを確認してください。
ログを表示するには、「ログデータの表示 (p. 156)」を参照してください。
API Version 2010-08-01
147
Amazon CloudWatch 開発者ガイド
クイックスタート: AWS CloudFormation を使用してログ
データを CloudWatch Logs に送信する
クイックスタート: AWS CloudFormation を使用して
ログデータを CloudWatch Logs に送信する
Abstract
ウェブサーバーで CloudWatch Logs を繰り返しプロビジョニングするには、AWS CloudFormation を使用します。
AWS CloudFormation を使って、JSON 形式のテンプレートに AWS リソースを記述できます。AWS
CloudFormation を使用すると、ロググループおよびメトリックスフィルタを記述し、迅速かつ継続的
に Amazon CloudWatch Logs にプロビジョニングできます。また、AWS CloudFormation で Amazon
EC2 インスタンスの CloudWatch Logs エージェントをインストールして設定できます。たとえば、
Amazon EC2 インスタンスに複数の Apache ウェブサーバーがある場合、ウェブサーバーのログとその
ログでモニタリングする情報を定義する単一の AWS CloudFormation テンプレートを記述できます。
テンプレートはすべての Apache ウェブサーバーで再利用できます。AWS CloudFormation の詳細につ
いては、『AWS CloudFormation ユーザーガイド』の「はじめに」を参照してください。
AWS CloudFormation の CloudWatch リソースの詳細については、『AWS CloudFormation ユーザーガ
イド』のAWS::ログ::LogGroup」および「AWS::ログ::MetricFilter」を参照してください。
以下のテンプレートスニペットはロググループとメトリックスフィルタを作成します。ロググループは
イベントログを 7 日間保持します。メトリックスフィルタは 404 の発生回数をカウントします。ステー
タスコードフィールドが 404 になるたびに、1 というメトリックス値を送信します。
例
"WebServerLogGroup": {
"Type": "AWS::Logs::LogGroup",
"Properties": {
"RetentionInDays": 7
}
},
"404MetricFilter": {
"Type": "AWS::Logs::MetricFilter",
"Properties": {
"LogGroupName": {
Ref": "WebServerLogGroup"
},
"FilterPattern": "[ip, identity, user_id, timestamp, request, status_code
= 404, size, ...]",
"MetricTransformations": [
{
"MetricValue": "1",
"MetricNamespace": "test/404s",
"MetricName": "test404Count"
}
]
}
}
[MyStack] という名前のスタックで、前の例では [MyStack-myLogGroup-]unique hash という名前の
ロググループと [myMetricFilter-]unique hash という名前のメトリックスフィルタを作成しています。
Amazon EC2 インスタンスおよび Amazon CloudWatch アラームを含む完全なサンプルテンプレートに
ついては、『AWS CloudFormation ユーザーガイド』の「Amazon CloudWatch のログサンプル」を参
照してください。
API Version 2010-08-01
148
Amazon CloudWatch 開発者ガイド
CloudWatch Logs エージェントのステータスをレポートし
ます。
CloudWatch Logs エージェントのステータスをレポー
トします。
Abstract
CloudWatch Logs エージェントの現在のステータスを確認します。
エージェントのステータスをレポートするには
1.
2.
EC2 インスタンスに接続します。詳細については、『Linux インスタンス用 Amazon EC2 ユーザー
ガイド』の「インスタンスへの接続」を参照してください。
接続できない場合は『Linux インスタンス用 Amazon EC2 ユーザーガイド』の「インスタンスへの
接続に関するトラブルシューティング」を参照してください。
コマンドプロンプトで、次のコマンドを入力します。
sudo service awslogs status
3.
/var/log/awslogs.log ファイルで CloudWatch Logs エージェントのエラー、警告、問題を確認して
ください。
CloudWatch Logs エージェントの開始
Abstract
CloudWatch Logs エージェントを開始します。
インストール後に CloudWatch Logs エージェントが自動的に開始されない場合、またはエージェント
を停止した場合、手動で開始できます。
エージェントを開始するには
1.
EC2 インスタンスに接続します。詳細については、『Linux インスタンス用 Amazon EC2 ユーザー
ガイド』の「インスタンスへの接続」を参照してください。
接続できない場合は、『Linux インスタンス用 Amazon EC2 ユーザーガイド』の「インスタンスへ
の接続に関するトラブルシューティング」を参照してください。
2.
コマンドプロンプトで、次のコマンドを入力します。
sudo service awslogs start
CloudWatch Logs エージェントの停止
Abstract
CloudWatch Logs エージェントを停止します。
エージェントを停止するには
1.
EC2 インスタンスに接続します。詳細については、『Linux インスタンス用 Amazon EC2 ユーザー
ガイド』の「インスタンスへの接続」を参照してください。
API Version 2010-08-01
149
Amazon CloudWatch 開発者ガイド
CloudWatch Logs エージェントのリファレンス
2.
接続できない場合は、『Linux インスタンス用 Amazon EC2 ユーザーガイド』の「インスタンスへ
の接続に関するトラブルシューティング」を参照してください。
コマンドプロンプトで、次のコマンドを入力します。
sudo service awslogs stop
CloudWatch Logs エージェントのリファレンス
Abstract
CloudWatch ログのリファレンスおよびよくある質問です。
CloudWatch Logs エージェントは、Amazon Linux または Ubuntu を実行する Amazon EC2 インスタン
スでログデータをCloudWatch Logs に自動送信する方法を提供します。エージェントは次のコンポー
ネントで構成されています。
• ログデータを CloudWatch Logs にプッシュする AWS CLI プラグイン。
• CloudWatch Logs にデータを送信する CloudWatch Logs aws ログのプッシュコマンドを実行するス
クリプト(デーモン)。
• cron ジョブはデーモンが常に実行中であることを確認します。
エージェント設定ファイル
CloudWatch Logs エージェント設定ファイルは、aws ログプッシュコマンドが必要とする情報を記述
します。エージェント設定ファイルの [general] セクションは、すべてログストリームに適用する一般
的な設定を定義します。[logstream] セクションは、リモートなログストリームにローカルファイルを
送信するために必要な情報を定義します。複数の [logstream] セクションを持つことができますが、設
定ファイル内にそれぞれ [logstream1]、[logstream2] などの一意の名前を持つ必要があります。ログファ
イルのデータの最初の行とともにある [logstream] 値は、ログファイルの ID を定義します。
[general]
state_file = <value>
logging_config_file = <value>
[logstream1]
log_group_name = <value>
log_stream_name = <value>
datetime_format = <value>
time_zone = [LOCAL|UTC]
file = <value>
file_fingerprint_lines = <integer> | <integer-integer>
multi_line_start_pattern = <regex> | {datetime_format}
initial_position = [start_of_file|end_of_file]
encoding = [ascii|utf_8|..]
buffer_duration = <integer>
batch_count = <integer>
batch_size = <intege>
[logstream2]
...
API Version 2010-08-01
150
Amazon CloudWatch 開発者ガイド
CloudWatch Logs エージェントのリファレンス
state_file
状態ファイルをどこに保存するかを指定します。
logging_config_file
エージェントのログ config ファイルの場所を指定します。 これはオプションであり、デフォルト
のログ設定を上書きします。 このファイルは、Python の設定ファイル形式
(https://docs.python.org/2/library/logging.config.html#logging-config-fileformat)です。 以下の名前
のロガーはカスタマイズできます。
cwlogs.push
cwlogs.push.reader
cwlogs.push.publisher
cwlogs.push.event
cwlogs.push.batch
cwlogs.push.stream
cwlogs.push.watcher
以下のサンプルは、デフォルトの値が INFO であるリーダーとパブリッシャーのレベルを WARNING
に変更します。
loggers]
keys=root,cwlogs,reader,publisher
[handlers]
keys=consoleHandler
[formatters]
keys=simpleFormatter
[logger_root]
level=INFO
handlers=consoleHandler
[logger_cwlogs]
level=INFO
handlers=consoleHandler
qualname=cwlogs.push
propagate=0
[logger_reader]
level=WARNING
handlers=consoleHandler
qualname=cwlogs.push.reader
propagate=0
[logger_publisher]
level=WARNING
handlers=consoleHandler
qualname=cwlogs.push.publisher
propagate=0
[handler_consoleHandler]
class=logging.StreamHandler
level=INFO
formatter=simpleFormatter
args=(sys.stderr,)
API Version 2010-08-01
151
Amazon CloudWatch 開発者ガイド
CloudWatch Logs エージェントのリファレンス
[formatter_simpleFormatter]
format=%(asctime)s - %(name)s - %(levelname)s - %(process)d - %(threadName)s
- %(message)s
log_group_name
送信先ロググループを指定します。ロググループが存在しない場合には、自動的に作成されます。
log_stream_name
送信先ログストリームを指定します。リテラル文字列、定義済み変数({instance_id}、{hostname}、
{ip_address})、またはこれらの組み合わせを使用して、ログストリーム名を定義できます。ログ
ストリームが存在しない場合には、自動的に作成されます。
datetime_format
ログからタイムスタンプを入手する方法を指定します。タイムスタンプはログイベントを取得し、
メトリックスを生成するために使用されます。現在の時刻は、[datetime_format] が提供されていな
い場合に各ログイベントで使用されます。提供された [datetime_format] がそのログメッセージに
対して無効の場合は、適切に解析されたタイムスタンプを持つ最後のログイベントのタイムスタン
プが使用されます。以前のログイベントが存在しない場合は、現在の時刻が使用されます。
一般的な datetime_format コードは次のとおりです。Python がサポートする datetime_format コー
ド(datetime.strptime())も使用できます。タイムゾーンオフセット(%z)もサポートされていま
す。ただし、Python 3.2 までは、コロン(:)のない [+-] HHMM はサポートされていません。詳細
については、strftime() および strptime() Behavior () を参照してください。
[%y]: ゼロ詰め 10 進数での年(世紀なし)です。00, 01, ..., 99
%Y: 10 進数での年(世紀あり)です。1970、1988、2001、2013
%b: ロケールの省略名称での月です。Jan、Feb ... Dec(en_US);
%b: ロケールの正式名称での月です。January、February...December(en_US);
%m: ゼロ詰め 10 進数での月です。01, 02, ..., 12
%d: ゼロ詰め 10 進数での日です。01, 02, ..., 31
%H: ゼロ詰め 10 進数での時(24 時間形式の時計)です。00, 01, ..., 23
%H: ゼロ詰め 10 進数での時(12 時間形式の時計)です。01, 02, ..., 12
%p: ロケールで AM または PM に相当するものです。
%M: ゼロ詰め 10 進数での分です。00, 01, ..., 59
%S: ゼロ詰め 10 進数での秒です。00, 01, ..., 59
%f: 左ゼロ詰め 10 進数でのマイクロ秒です。000000, ..., 999999
%z: +HHMM または -HHMM 形式の UTC オフセットです。+0000, -0400, +1030
形式の例:
Syslog: '%b %d %H:%M:%S', e.g. Jan 23 20:59:29
Log4j: '%d %b %Y %H:%M:%S', e.g. 24 Jan 2014 05:00:00
ISO8601: '%Y-%m-%dT%H:%M:%S%z', e.g. 2014-02-20T05:20:20+0000
time_zone
ログイベントのタイムスタンプのタイムゾーンを指定します。サポートされる 2 つの値は UTC お
よび LOCAL です。デフォルトは LOCAL です。タイムゾーンが [datetime_format] に基づいて推定
できない場合に使用されます。
API Version 2010-08-01
152
Amazon CloudWatch 開発者ガイド
CloudWatch Logs エージェントのリファレンス
file
CloudWatch Logs にプッシュするログファイルを指定します。ファイルは、特定のファイルまたは
複数のファイルを指すことができます(/var/log/system.log* のようにワイルドカードを使用)。
ファイルの変更時間に基づいて、最新のファイルのみが CloudWatch Logs にプッシュされます。
access_log.2014-06-01-01 と access_log.2014-06-01-02 など同じ形式の一連のファイルを指定す
るにはワイルドカードの使用をお勧めします。ただし、access_log_80 と access_log_443 のよう
に種類が異なる複数のファイルには使用しないでください。種類が異なる複数のファイルを指定す
るには、設定ファイルに別のストリームログのエントリを追加して、各種類のログファイルが異な
るロググループに行くようにします。圧縮ファイルはサポートされていません。
file_fingerprint_lines
ファイルを識別するための行範囲を指定します。有効な値は「1」「2-5」のように単一の数字また
はハイフンで区切られた 2 つの数字です。デフォルト値は「1」です。最初の行を使用してフィン
ガープリントを計算します。指定された行がすべて存在しない限り、フィンガープリント行は
CloudWatch Logs に送信されません。
multi_line_start_pattern
ログメッセージの開始を識別するパターンを指定します。ログメッセージは、パターンに一致する
1 行と、それに続くパターンに一致しない行で構成されます。 有効な値は、正規表現または
{datetime_format} です。{datetime_format} を使用する場合は、datetime_format オプションを指定
する必要があります。デフォルト値は「^[^\s]'」です。よって、空白文字以外の文字で始まる行で
前のログメッセージを終了し、新しいログメッセージを開始します。
initial_position
データの読み出しをどこから開始するかを指定します(start_of_file または end_of_file)。デフォ
ルトは start_of_file です。そのログストリームに保持されている状態がない場合にのみ使用されま
す。
encoding
ファイルを正しく読み込むことができるように、ログファイルのエンコードを指定します。デフォ
ルトは utf_8 です。Python の codecs.decode() がサポートするエンコードを使用できます。
Caution
正しくないエンコードを指定すると、デコードできない文字がそのほかの文字に置き換え
られるため、データ損失が生じる可能性があります。
一般的なエンコードを次に示します。
ascii, big5, big5hkscs, cp037, cp424, cp437, cp500, cp720, cp737, cp775,
cp850, cp852, cp855, cp856, cp857, cp858, cp860, cp861, cp862, cp863, cp864,
cp865, cp866, cp869, cp874, cp875, cp932, cp949, cp950, cp1006, cp1026,
cp1140, cp1250, cp1251, cp1252, cp1253, cp1254, cp1255, cp1256, cp1257,
cp1258, euc_jp, euc_jis_2004, euc_jisx0213, euc_kr, gb2312, gbk, gb18030,
hz, iso2022_jp, iso2022_jp_1, iso2022_jp_2, iso2022_jp_2004, iso2022_jp_3,
iso2022_jp_ext, iso2022_kr, latin_1, iso8859_2, iso8859_3, iso8859_4,
iso8859_5, iso8859_6, iso8859_7, iso8859_8, iso8859_9, iso8859_10, iso8859_13,
iso8859_14, iso8859_15, iso8859_16, johab, koi8_r, koi8_u, mac_cyrillic,
mac_greek, mac_iceland, mac_latin2, mac_roman, mac_turkish, ptcp154,
shift_jis, shift_jis_2004, shift_jisx0213, utf_32, utf_32_be, utf_32_le,
utf_16, utf_16_be, utf_16_le, utf_7, utf_8, utf_8_sig
buffer_duration
ログイベントのバッチ期間を指定します。最小値は 5000ms で、デフォルト値は 5000ms です。
batch_count
バッチのログイベントの最大値を 10000 までの値で指定します。 デフォルト値は 1000 です。
バッチサイズ
バッチのログイベントの最大値を 1048576 バイトまでのバイト値で指定します。 デフォルト値は
32768 バイトです。 このサイズは、UTF-8 のすべてのイベントメッセージの合計に各ログイベン
トにつき 26 バイトを加算して計算されます。
API Version 2010-08-01
153
Amazon CloudWatch 開発者ガイド
CloudWatch Logs エージェントのリファレンス
CloudWatch Logs エージェントのよくある質問
どのようなファイル更新がサポートされていますか。
次のファイル更新機能がサポートされています。
1. 既存のファイルを数字サフィックスをつけた名前に変更し、その後、元の名前の空のログファ
イルを作成し直します。たとえば、/var/log/syslog.log が /var/log/syslog.log.1 という名前に変更
されます。/var/log/syslog.log.1 が前回の更新により既に存在する場合は、/var/log/syslog.log.2
という名前に変更されます。
2. 元のログファイルを、コピーを作成した後切り捨てます。たとえば、/var/log/syslog.log を
/var/log/syslog.log.1 にコピーし、/var/log/syslog.log を切り捨てます。この場合、データを損失
する恐れがあるため、このファイル更新機能の使用にはご注意ください。
3. 古いファイルと共通のパターンを持つ新しいファイルを作成します。たとえば
/var/log/syslog.log.2014-01-01 をそのまま残し、/var/log/syslog.log.2014-01-02 を作成します。
ファイルのフィンガープリント(ソース ID)は、ログストリームキーとファイルのコンテンツの
1 行目をハッシュして計算されます。この動作をオーバーライドするには、[file_fingerprint_lines]
オプションを使用できます。ファイルの更新が発生した場合、新しいファイルには新しいコンテン
ツがあり古いファイルにはコンテンツの追加がないと思われるため、エージェントは古いファイル
の読み込みが完了した後は、新しいファイルをプッシュします。
使用しているエージェントのバージョンを確認する方法
セットアップスクリプトから CloudWatch Logs エージェントをインストールした場合、
[/var/awslogs/bin/awslogs-version.sh] で使用しているエージェントのバージョンを確認することが
できます。 エージェントのバージョンと主要な依存関係がプリントアウトされます。 yum から
CloudWatch Logs エージェントをインストールした場合には、["yum info awslogs"] と ["yum info
aws-cli-plugin-cloudwatch-logs"] で CloudWatch Logs エージェントとプラグインのバージョンを確
認することができます。
ログのエントリは、どのようにログイベントに変換されるのですか。
ログイベントには 2 つのプロパティが含まれます。イベント発生時のタイムスタンプおよび生のロ
グメッセージです。デフォルトでは、空白文字以外の文字で始まる行は、前のログメッセージがあ
る場合はこれを終了して新しいログメッセージを開始します。この動作をオーバーライドするに
は、[multi_line_start_pattern] を使用します。パターンに一致する行が新しいログメッセージを開始
します。パターンには正規表現または「{datetime_format}」を使用できます。 たとえば、それぞれ
のログメッセージの 1 行目が「2014-01-02T13:13:01Z」のようなタイムスタンプを持っている場
合、[multi_line_start_pattern] は「\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}Z」と設定できます。 設定を簡略
化するために、[datetime_format] オプションが指定されている場合は「{datetime_format}」変数を
使用できます。 同じ例で、[datetime_format] が「%Y-%m-%dT%H:%M:%S%z」に設定されている
場合、multi_line_start_pattern は「{datetime_format}」だけにできます。
現在の時刻は、[datetime_format] が提供されていない場合に各ログイベントで使用されます。提供
された [datetime_format] がそのログメッセージに対して無効の場合は、適切に解析されたタイム
スタンプを持つ最後のログイベントのタイムスタンプが使用されます。前のログイベントがない場
合は、現在の時刻が使用されます。ログイベントが現在の時刻または前のログイベントの時刻に
フォールバックした場合は、警告メッセージが記録されます。
タイムスタンプはログイベントを取得し、メトリックスを生成するために使用されます。誤った形
式を指定した場合、ログイベントが取得できなくなり誤ったメトリックスが生成されます。
ログイベントはどのようにバッチされていますか。
次の条件のいずれかが満たされる場合、バッチがフルになり発行されます。
1. 最初のログイベントが追加されてから、[buffer_duration] の時間が経過した。
2. 累積されたログイベントの [batch_size] 未満ですが、新しいログイベントを追加すると [batch_size]
を超過します。
3. ログイベント数は [batch_count] に達しました。
4. バッチのログイベントは 24 時間以上になりませんが、新しいログイベントを追加すると 24 時
間の制約を超過します。
API Version 2010-08-01
154
Amazon CloudWatch 開発者ガイド
CloudWatch Logs エージェントのリファレンス
ログエントリ、ログイベント、またはバッチがスキップまたは切り捨てられるのはどのような原因があ
りますか。
PutLogEvents API の制約に従って、次の問題によりログイベントまたはバッチがスキップされる
場合があります。
Note
データがスキップされた場合、CloudWatch Logs エージェントはログに警告を書き込みま
す。
1. ログイベントのサイズが 32KB を超過した場合、ログイベントは完全にスキップされます。
2. ログイベントのタイムスタンプが 2 時間以上未来の場合、ログイベントはスキップされます。
3. ログイベントのタイムスタンプが 14 日以上過去の場合、ログイベントはスキップされます。
4. ログイベントがロググループの保持期間よりも古い場合、バッチはすべてスキップされます。
エージェントを停止させた場合、データ損失や重複が発生しますか。
状態ファイルが使用可能であり、最後に実行された時からファイル更新が発生していなければ、発
生しません。CloudWatch Logs エージェントは停止した場所から再開してログデータのプッシュを
続行できます。
同一または異なるホストの異なるログデータを同じログストリームに指定できますか。
複数のログソースから単一のログストリームにデータを送信する設定はサポートされていません。
エージェントはどの API に呼び出しを作成しますか(またはどのアクションを IAM ポリシーに含める
必要がありますか)。
CloudWatch Logs エージェントには CreateLogGroup、CreateLogStream、DescribeLogStreams
および PutLogEvents アクションが必要です。最新のエージェントを使用している場合には、
DescribeLogStreams アクションの必要はありません。 以下の IAM ポリシーの例を参照してくだ
さい。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"logs:CreateLogGroup",
"logs:CreateLogStream",
"logs:PutLogEvents",
"logs:DescribeLogStreams"
],
"Resource": [
"arn:aws:logs:*:*:*"
]
}
]
}
CloudWatch Logs エージェントに自動的にロググループまたはログストリームを作成させたくありま
せん。 これらの作成および削除方法と、エージェントによる再作成を禁止する方法を教えてください。
IAM ポリシーで、エージェントを次のアクションのみに制限できます。DescribeLogStreams、
PutLogEvents。
トラブルシューティング用にはどのログを調べますか。
エージェントのインストールログは [/var/log/awslogs-agent-setup.log] に、エージェントログは
[/var/log/awslogs.log] にあります。
API Version 2010-08-01
155
Amazon CloudWatch 開発者ガイド
ログデータの表示
ログデータの表示
Abstract
ログストリームごとの CloudWatch ログデータの表示
CloudWatch Logs エージェントで CloudWatch Logs に送信されるストリームごとにログデータを表示
できます。
ログデータを表示するには
1.
2.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Amazon Web Services General Reference の Regions and Endpoints を
参照してください。
3.
4.
5.
[Navigation] ペインの [Logs] をクリックします。
コンテンツペインの [Log Groups] 列で、データを表示するロググループをクリックします。
[Log Groups > Streams for] ペインの [Log Streams] 列で、ログデータを表示するログストリーム名
をクリックします。
ログの保持期間の変更
Abstract
ログデータを保持する時間を変更します。
デフォルトでは、ログデータは永続的に保存されます。ただし、ロググループにログデータを保存する
期間を設定できます。現在の保持設定より古いデータはすべて自動的に削除されます。各ロググループ
のログの保持期間は、いつでも変更できます。
ログの保持設定を変更するには
1.
2.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Amazon Web Services General Reference の Regions and Endpoints を
参照してください。
API Version 2010-08-01
156
Amazon CloudWatch 開発者ガイド
ログデータの検索およびフィルタリング
3.
[Navigation] ペインの [Logs] をクリックします。
4.
5.
コンテンツペインの [Expire Events After] 列で、変更する保持設定をクリックします。
[Edit Retention] ダイアログボックスで、[New Retention] リストからログ保管期間を選択し、[OK]
をクリックします。
ログデータの検索およびフィルタリング
Abstract
CloudWatch Logs でメトリックスフィルタを作成し、CloudWatch を使用したメトリックスの作成とログイベント
のモニタリングに使用します。
CloudWatch Logs エージェントが Amazon CloudWatch へのログデータの発行を開始した後、1 つ以上
のメトリックスフィルタを作成して、ログデータの検索およびフィルタリングを開始できます。メト
リックスフィルタは CloudWatch Logs に送信されたログデータを検索するための語句とパターンを定
義します。CloudWatch Logs はこれらのメトリックスフィルタを使用して、ログデータをグラフの作
成やアラームの設定に利用できる CloudWatch メトリックスに変換します。各メトリックスフィルタは
以下のキー要素で構成されています。
フィルタパターン
各ログイベントのデータを CloudWatch Logs がどのように解釈するかについての記号による説明
です。たとえば、ログエントリにはタイムスタンプ、IP アドレス、文字列などが含まれる可能性
があります。パターンを使用して、ログファイルの検索対象を指定します。
メトリックス名
モニタリングされたログ情報が発行される CloudWatch メトリックスの名前です。たとえば、
ErrorCount というメトリックスに発行できます。
メトリックス名前空間
新しい CloudWatch メトリックスの送信先名前空間です。
メトリックス値
メトリックスに発行するものです。たとえば、「Error」など特定の語句の発生数をカウントする
場合、発生ごとに値は「1」となります。 転送されたバイト数をカウントする場合は、発行される
値はログイベントの値になります。
Topics
• フィルタとパターンの構文 (p. 158)
• メトリックスフィルタの作成 (p. 163)
• メトリックスフィルタの一覧表示 (p. 172)
• メトリックスフィルタの削除 (p. 173)
API Version 2010-08-01
157
Amazon CloudWatch 開発者ガイド
フィルタとパターンの構文
• フィルタパターンを使用したログデータ検索 (p. 174)
フィルタとパターンの構文
Abstract
CloudWatch Logs のメトリックスフィルタを使用してログイベントで一致する語句を検索します。
メトリックスフィルタで指定されたものに一致する語句や値が、ログイベントの中で検索されます。メ
トリックスフィルタは、ログイベントで語句、フレーズ、値を 1 つ見つけるたびに CloudWatch メト
リックスでカウントします。たとえば、ログイベントの中で ERROR という単語を検索して出現回数
を数えるメトリックスフィルタを作成します。メトリックスフィルタには、スペースで区切られたログ
イベントから値を抽出する機能もあります。たとえば、ウェブリクエストのレイテンシーです。条件演
算子やワイルドカードを使用して完全一致を見つけることもできます。メトリックスフィルタを作成す
る前に、CloudWatch コンソールで検索パターンをテストできます。以下のセクションでは、メトリッ
クスフィルタの構文についてさらに詳しく説明します。
ログイベントの語句の一致
ログイベントで ERROR などの語句を検索するには、ERROR をメトリックスフィルタパターンとして
使用します。メトリックスフィルタパターンには複数の語句を指定できますが、一致させるためには語
句はすべてログイベントに含まれるものである必要があります。たとえば、フィルタパターン ERROR
は以下のログイベントメッセージに一致します。
• [ERROR] A fatal exception has occurred
• Exiting with ERRORCODE: -1
フィルタパターン ERROR Exception は以下のログイベントメッセージに一致します。
• [ERROR] Caught IllegalArgumentException
• [ERROR] Unhandled Exception
フィルタパターン "Failed to process the request" は次のログイベントメッセージに一致します。
• [WARN] Failed to process the request
• [ERROR] Unable to continue: Failed to process the request
Note
アルファベット文字およびアンダースコア以外の文字を含むメトリックスフィルタの語句は二
重引用符("")で囲む必要があります。メトリックスフィルタは大文字と小文字を区別します。
JSON ログイベントの語句の一致
JSON ログイベントから値を取得できます。JSON ログイベントから値を取得するには、文字列ベース
のメトリックスフィルタを作成する必要があります。科学的記数法を含む文字列はサポートされていま
せん。JSON ログイベントデータの項目は厳密にメトリックスフィルタと一致する必要があります。
JSON ログイベントにメトリックスフィルタを作成して表示するのは次のような場合があります。
• 特定のイベントが発生した場合。たとえば eventName が「UpdateTrail」の場合です。
• IP が既知のサブネット以外の場合。たとえば、sourceIpAddress が既知のサブネットの範囲にない場
合です。
API Version 2010-08-01
158
Amazon CloudWatch 開発者ガイド
フィルタとパターンの構文
• 二つ以上の条件の組み合わせが true の場合。たとえば、eventName が「UpdateTrail」で、
recipientAccountId が 123456789012 の場合です。
スペース区切りログイベントから値を取得するメトリックス
フィルタの使用
メトリックスフィルタを使用してスペース区切りログイベントから値を取得できます。角括弧 [] または
2 個の二重引用符("")で囲まれた文字は単一のフィールドとして扱われます。以下に例を示します。
127.0.0.1 - frank [10/Oct/2000:13:25:15 -0700] "GET /apache_pb.gif HTTP/1.0"
200 1534
127.0.0.1 - frank [10/Oct/2000:13:35:22 -0700] "GET /apache_pb.gif HTTP/1.0"
500 5324
127.0.0.1 - frank [10/Oct/2000:13:50:35 -0700] "GET /apache_pb.gif HTTP/1.0"
200 4355
スペース区切りイベントを解析するメトリックスフィルタパターンを指定するには、メトリックスフィ
ルタパターンが、フィールドの名前をカンマで区切り、すべてのパターンを角括弧で囲んで指定する必
要があります。たとえば、[ip, user, username, timestamp, request, status_code, bytes] のようになりま
す。
フィールド数が不明な場合は、省略符号(…)を使用した省略通知を使用できます。以下に例を示しま
す。
[..., status_code, bytes]
[ip, user, ..., status_code, bytes]
[ip, user, ...]
また、フィールドに条件を追加して、すべての条件に一致するログイベントのみがフィルターに一致す
るようにできます。以下に例を示します。
[ip,
[ip,
[ip,
[ip,
user,
user,
user,
user,
username,
username,
username,
username,
timestamp,
timestamp,
timestamp,
timestamp,
request, status_code, bytes > 1000]
request, status_code = 200, bytes]
request, status_code = 4*, bytes]
request = *html*, status_code = 4*, bytes]
CloudWatch Logs は文字列条件フィールドおよび数値条件フィールドの両方をサポートします。文字
列フィールドでは、= または != 演算子をアスタリスク(*)とともに使用できます。
数値フィールドでは、>、<、>=、<=、=、および != 演算子を使用できます。
JSON ログイベントから値を取得するメトリックスフィルタの
使用
メトリックスフィルタを使用して、JSON ログイベントから値を取得できます。JSON ログイベントの
メトリックスフィルタ構文は次の形式を使用します。
{ SELECTOR EQUALITY_OPERATOR STRING }
メトリックスフィルタは、JSON の記述であることを示すために中括弧 { } で囲む必要があります。メ
トリックスフィルタには次のパーツがあります。
API Version 2010-08-01
159
Amazon CloudWatch 開発者ガイド
フィルタとパターンの構文
SELECTOR
どの JSON プロパティを確認するかを指定します。プロパティセレクタは常に、JSON のルートを
示すドル記号($)から始まります。プロパティセレクタは英数字の文字列であり「-」および「_」
をサポートします。配列要素は [NUMBER] 構文で示され、プロパティに従う必要があります。例
は次のとおりです。$.eventId、$.users[0]、$.users[0].id、$.requestParameters.instanceId。
EQUALITY_OPERATOR
= または != です。=.
STRING
引用符付きまたは引用符なしの文字列です。アスタリスク「*」ワイルドカード文字を検索語句の
中間、前方、後方の文字の一致に使用できます。たとえば、[*Event] は [PutEvent] と [GetEvent]
に一致します。[Event*] は [EventId] と [EventName] に一致します。[Ev*ent] は、実際の文字列
[Ev*ent] のみと一致します。英数字のみで構成された文字列を引用符で囲む必要はありません。
unicode やそのほかの文字(たとえば「@」「$」「\」など)を含む文字列は二重引用符で囲んで
有効にする必要があります。
メトリックスフィルタの例
{
"eventType": "UpdateTrail",
"sourceIpAddress": "111.111.111.111",
"arrayKey": [
"value",
"another value"
],
"objectList": [
{
"name": "a",
"id": 1
},
{
"name": "b",
"id": 2
}
],
"SomeObject": null,
"ThisFlag": true
}
上記の JSON の例は、これらのフィルタのいずれかが一致します。
{ $.eventType = "UpdateTrail" }
UpdateTrail というイベントタイプのフィルタ。
{ $.sourceIpAddress != 123.123.* }
プレフィックスが 123.123 のサブネットの範囲外にある IP アドレスのフィルタ。
{ $.arrayKey[0] = "value" }
arrayKey の最初のエントリが「value」のフィルタ。arrayKey が配列ではない場合、これは false にな
ります。
API Version 2010-08-01
160
Amazon CloudWatch 開発者ガイド
フィルタとパターンの構文
{ $.objectList[1].id = 2 }
objectList の 2 番目のエントリが ID = 2 というプロパティを持つフィルタ。objectList が配列ではない
場合、これは false になります。objectList がオブジェクトではない場合、または ID プロパティがない
場合、これは false になります。
{ $.SomeObject IS NULL }
null に設定されている SomeObject のフィルタ。これは、指定したオブジェクトが null に設定されてい
る場合のみ true になります。
{ $.SomeOtherObject NOT EXISTS }
存在しない SomeOtherObject のフィルタ。これは、指定したオブジェクトがログデータに存在しない
場合のみ true になります。
{ $.ThisFlag IS TRUE }
TRUE になっている ThisFlag のフィルタ。これは、FALSE 値をチェックするブールフィルタでも機能
します。
複合条件
OR (||) と AND (&&) を使用して複数の条件を組み合わせ、複合式にできます。括弧が使用できます。
また、構文は演算子の標準の順序に従い、() > && > || となります。
{
"user": {
"id": 1,
"email": "[email protected]"
},
"users": [
{
"id": 2,
"email": "[email protected]"
},
{
"id": 3,
"email": "[email protected]"
}
],
"actions": [
"GET",
"PUT",
"DELETE"
],
"coordinates": [
[0, 1, 2],
[4, 5, 6],
[7, 8, 9]
]
}
API Version 2010-08-01
161
Amazon CloudWatch 開発者ガイド
フィルタとパターンの構文
例
{ ($.user.id = 1) && ($.users[0].email = "[email protected]") }
上記の JSON に一致します。
{ ($.user.id = 2 && $.users[0].email = "nonmatch") || $.actions[2] = "GET" }
上記の JSON と一致しません。
{ $.user.email = "[email protected]" || $.coordinates[0][1] = nonmatch
&& $.actions[2] = nomatch }
上記の JSON に一致します。
{ ($.user.email = "[email protected]" || $.coordinates[0][1] = nonmatch)
&& $.actions[2] = nomatch }
上記の JSON と一致しません。
特別な考慮事項
SELECTOR は JSON の値ノード(文字列または数字)を指定する必要があります。配列またはオブ
ジェクトを指定しても、ログ形式がフィルタと一致しないためフィルタは適用されません。 たとえば、
{$.users = 1} と {$.users != 1} は両方ともユーザーが配列であるログイベントとは一致しません。
{
"users": [1, 2, 3]
}
数値比較
メトリックスフィルタ構文は数値比較の正確な一致をサポートします。次の数値比較がサポートされて
います。<、>、>=、<=、=、!=
数字フィルタは次のような構文です。
{ SELECTOR NUMERIC_OPERATOR NUMBER }
メトリックスフィルタは、JSON の記述であることを示すために中括弧 { } で囲む必要があります。メ
トリックスフィルタには次のパーツがあります。
SELECTOR
どの JSON プロパティを確認するかを指定します。プロパティセレクタは常に、JSON のルートを
示すドル記号($)から始まります。プロパティセレクタは英数字の文字列であり「-」および「_」
をサポートします。配列要素は [NUMBER] 構文で示され、プロパティに従う必要があります。例
は次のとおりです: $.latency、$.numbers[0]、$.errorCode、$.processes[4].averageRuntime。
NUMERIC_OPERATOR
次のいずれかを指定できます。=、!=、<、>、<=、または >=.
NUMBER
オプションで + または - を伴う整数、オプションで + または - を伴う小数、科学的記数法で表した
数字(オプションで + または - を伴う整数または小数に続いて「e」、その後にオプションで + ま
たは - を伴う整数または小数)です。
API Version 2010-08-01
162
Amazon CloudWatch 開発者ガイド
メトリックスフィルタの作成
例:
{
{
{
{
{
{
{
$.latency >= 500 }
$.numbers[0] < 10e3 }
$.numbers[0] < 10e-3 }
$.processes[4].averageRuntime <= 55.5 }
$.errorCode = 400 }
$.errorCode != 500 }
$.latency > +1000 }
メトリックスフィルタ値の抽出
JSON イベントで見つかった数値をメトリックス値として CloudWatch に発行できます。たとえば、
JSON のリクエストで見つかったレイテンシーのメトリックスを発行するには次のようにします。
metricFilter: { $.latency = * } metricValue: $.latency
上記は次の JSON に 50 という値のメトリックスを発行します。
{
"latency": 50,
"requestType": "GET"
}
metricValue の構文は、メトリックスフィルタの SELECTOR の構文と同じです。メトリックスフィル
タとは異なり、括弧で囲む必要はありません。metricValue のセレクタが JSON イベントに一致しない
場合または数値に変換できない場合は、メトリックスは発行されません。
メトリックスフィルタの作成
Abstract
例に基づいてメトリックスフィルタを作成し CloudWatch Logs を使用してログデータを検索します。
以下の例は、メトリックスフィルタの作成方法を示しています。
Topics
•
•
•
•
例: ログイベントのカウント (p. 163)
例: 単語「Error」の出現回数をカウントする (p. 165)
例: HTTP 404 レスポンスのカウント (p. 166)
例: 400 レベルを見つけて 4xx メトリックスにカウントする (p. 169)
• 例: Apache ログから転送されたバイト数の抽出 (p. 170)
例: ログイベントのカウント
Abstract
ログイベントのカウント方法を示す CloudWatch Logs メトリックスフィルタの例です。
ログイベントのモニタリングで最もシンプルなタイプは、発生したログのイベント数のカウントです。
目的はすべてのイベントのカウントや、「ハートビート」形式のモニタリングの作成、あるいは単にメ
トリックスフィルタの作成練習の場合もあります。
API Version 2010-08-01
163
Amazon CloudWatch 開発者ガイド
メトリックスフィルタの作成
次の CLI の例では、MyAppAccessCount というメトリックスフィルタをロググループ MyApp/access.log
に適用して、CloudWatch の名前空間 YourNamespace にメトリックス EventCount を生成します。フィ
ルタは、すべてのログイベントコンテンツに一致し、メトリックスを 1 ずつ増加させるように設定され
ています。
CloudWatch コンソールを使用してメトリックスフィルタを作成するには
1.
2.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Amazon Web Services General Reference の Regions and Endpoints を
参照してください。
3.
4.
5.
6.
[Navigation] ペインの [Logs] をクリックします。
コンテンツペインでロググループを選択し、[Create Metric Filter] をクリックします。
[Define Logs Metric Filter] 画面で、[Filter Pattern] フィールドを空欄にします。
[Assign Metric] をクリックし、[Create Metric Filter and Assign a Metric] 画面の [Filter Name] フィー
ルドに「MyAppAccessCount」と入力します。
[Metric Details] で [Metric Namespace] フィールドに、「YourNameSpace」と入力します。
[Metric Name] フィールドに「MyAppAccessEventCount」と入力し、[Create Filter] をクリックし
ます。
7.
8.
AWS CLI を使用してメトリックスにフィルタを作成するには
•
コマンドプロンプトで、次のように入力します。
% aws logs put-metric-filter \
--log-group-name MyApp/access.log \
--filter-name MyAppAccessCount \
--filter-pattern '' \
--metric-transformations \
metricName=EventCount,metricNamespace=YourNamespace,metricValue=1
イベントデータを投稿することで、この新しいポリシーをテストできます。メトリックス EventCount
に発行された 2 つのデータポイントを参照する必要があります。
AWS CLI を使用してイベントデータを投稿するには
•
コマンドプロンプトで、次のように入力します。
API Version 2010-08-01
164
Amazon CloudWatch 開発者ガイド
メトリックスフィルタの作成
% aws logs put-log-events \
--log-group-name MyApp/access.log --log-stream-name TestStream1 \
--log-events \
timestamp=1394793518000,message="Test event 1" \
timestamp=1394793518000,message="Test event 2"
timestamp=1394793528000,message="This message also contains an Error"
例: 単語「Error」の出現回数をカウントする
Abstract
単語の出現回数のカウント方法を示す CloudWatch Logs メトリックスフィルタの例です。
ログイベントにはよく、カウントしておきたい重要なメッセージが含まれています。操作の成功または
失敗についてなどです。たとえば、特定の操作に失敗すると、エラーが発生してログファイルに記録さ
れる場合があります。エラーの傾向を理解するためのこれらのエントリをモニタリングする場合があり
ます。
次の例では、Error という語句をモニタリングするメトリックスフィルターが作成されます。ポリシー
はすでに作成されてロググループ MyApp/message.log に追加されています。CloudWatch Logs は、
MyApp/message.log という名前空間の CloudWatch カスタムメトリックス ErrorCount に、Error を含
むイベントごとに「1」の値をともなったデータポイントを発行します。Error という単語を含むイベン
トがない場合は、データポイントは発行されません。
CloudWatch コンソールを使用してメトリックスフィルタを作成するには
1.
2.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Amazon Web Services General Reference の Regions and Endpoints を
参照してください。
3.
4.
[Navigation] ペインの [Logs] をクリックします。
コンテンツペインでロググループを選択し、[Create Metric Filter] をクリックします。
5.
[Define Logs Metric Filter] 画面の [Filter Pattern] フィールドに「Error」と入力します。
Note
[Filter Pattern] フィールドのすべての項目は大文字と小文字が区別されます。
API Version 2010-08-01
165
Amazon CloudWatch 開発者ガイド
メトリックスフィルタの作成
6.
7.
フィルタパターンをテストするには、[Select Log Data to Test] リストでメトリックスフィルタを
テストするロググループを選択し、[Test Pattern] をクリックします。
[Results] に、ログファイルで見つかったフィルタパターンの発生数を示す CloudWatch Logs のメッ
セージが表示されます。
Note
詳細結果を表示するには、[Show test results] をクリックします。
8.
9.
[Assign Metric] をクリックし、[Create Metric Filter and Assign a Metric] 画面の [Filter Name] フィー
ルドに「MyAppErrorCount」と入力します。
[Metric Details]で、[Metric Namespace] フィールドに「YourNameSpace」と入力します。
10. [Metric Name] フィールドに「ErrorCount」と入力し、[Create Filter] をクリックします。
AWS CLI を使用してメトリックスにフィルタを作成するには
•
コマンドプロンプトで、次のように入力します。
% aws logs put-metric-filter \
--log-group-name MyApp/message.log \
--filter-name MyAppErrorCount \
--filter-pattern 'Error' \
--metric-transformations \
metricName=EventCount,metricNamespace=YourNamespace,metricValue=1
メッセージに「Error」を含むイベントを投稿することで、この新しいポリシーをテストできます。
AWS CLI を使用してイベントを投稿するには
•
コマンドプロンプトで、次のように入力します。
% aws logs put-log-events \
--log-group-name MyApp/access.log --log-stream-name TestStream1 \
--log-events \
timestamp=1394793518000,message="This message contains an Error" \
timestamp=1394793528000,message="This message also contains an Error"
Note
パターンは大文字と小文字を区別します。
例: HTTP 404 レスポンスのカウント
Abstract
HTTP 404 レスポンスをカウントする方法を示す CloudWatch Logs メトリックスフィルタの例です。
CloudWatch Logsを使用して、Apache サーバーが HTTP 404 レスポンス(ページが見つからない場合
のレスポンスコード)を返した数をモニタリングできます。サイトの訪問者が目的のリソースを見つけ
API Version 2010-08-01
166
Amazon CloudWatch 開発者ガイド
メトリックスフィルタの作成
られなかった頻度を理解するためにモニタリングする場合があります。ログレコードが各ログイベント
(サイト訪問)に関する次の情報を含むように設定されている前提です。
• 要求者の IP アドレス
• RFC 1413 ID
• Username
• タイムスタンプ
• リクエスト方法およびリクエストされたリソースとプロトコル
• リクエストに対する HTTP レスポンスコード
• リクエストで転送されたバイト数
例は次のようになります。
127.0.0.1 - frank [10/Oct/2000:13:55:36 -0700] "GET /apache_pb.gif HTTP/1.0"
404 2326
以下の例に示すように、HTTP 404 エラーの構造にイベントが一致するようにルールを指定できます。
CloudWatch コンソールを使用してメトリックスフィルタを作成するには
1.
2.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Amazon Web Services General Reference の Regions and Endpoints を
参照してください。
3.
[Navigation] ペインの [Logs] をクリックします。
4.
5.
コンテンツペインでロググループを選択し、[Create Metric Filter] をクリックします。
[Define Logs Metric Filter] 画面の [Filter Pattern] フィールドに「[IP, UserInfo, User,
Timestamp, RequestInfo, StatusCode=404, Bytes]」と入力します。
6.
フィルタパターンをテストするには、[Select Log Data to Test] リストでメトリックスフィルタを
テストするロググループを選択し、[Test Pattern] をクリックします。
[Results] に、ログファイルで見つかったフィルタパターンの発生数を示す CloudWatch Logs のメッ
セージが表示されます。
7.
Note
詳細結果を表示するには、[Show test results] をクリックします。
API Version 2010-08-01
167
Amazon CloudWatch 開発者ガイド
メトリックスフィルタの作成
8.
[Assign Metric] をクリックし、[Create Metric Filter and Assign a Metric] 画面の [Filter Name] フィー
ルドに「HTTP404Errors」と入力します。
9. [Metric Details] で、[Metric Namespace] フィールドに「YourNameSpace」と入力します。
10. [Metric Name] フィールドに「ApacheNotFoundErrorCount」と入力し、[Create Filter] をクリック
します。
AWS CLI を使用してメトリックスにフィルタを作成するには
•
コマンドプロンプトで、次のように入力します。
% aws logs put-metric-filter \
--log-group-name MyApp/access.log \
--filter-name HTTP404Errors \
--filter-pattern '[ip, id, user, timestamp, request, status_code=404,
size]' \
--metric-transformations \
metricName=PageNotFoundCount,metricNamespace=YourNamespace,metricValue=1
この例では、右角括弧や左角括弧、二重引用符、および文字列 404 のようなリテラル文字列が使用さ
れていました。このパターンでは、ログイベントをモニタリングするにはログイベントメッセージ全体
が一致する必要があります。
describe-monitoring-policies コマンドを使用してメトリックスフィルタの作成を確認できます。このよ
うな出力が表示されます。
% aws logs describe-metric-filters --log-group-name MyApp/access.log
{
"metricFilters": [
{
"filterName": "HTTP404Errors",
"metricTransformations": [
{
"metricValue": "1",
"metricNamespace": "YourNamespace",
"metricName": "PageNotFoundCount"
}
],
"creationTime": 1399277571078,
"filterPattern": "[ip, id, user, timestamp, request, status_code=404,
size]"
}
]
}
これでイベントをいくつか手動で投稿できます。
% aws logs put-log-events \
--log-group-name MyApp/access.log --log-stream-name hostname \
--log-events \
timestamp=1394793518000,message="127.0.0.1 - bob
[10/Oct/2000:13:55:36 -0700] \"GET /apache_pb.gif HTTP/1.0\" 404 2326" \
API Version 2010-08-01
168
Amazon CloudWatch 開発者ガイド
メトリックスフィルタの作成
timestamp=1394793528000,message="127.0.0.1 - bob
[10/Oct/2000:13:55:36 -0700] \"GET /apache_pb2.gif HTTP/1.0\" 200 2326"
サンプルログイベントを入力してすぐに、CloudWatch コンソールで ApacheNotFoundErrorCount とい
う名前のメトリックスを取得できます。
例: 400 レベルを見つけて 4xx メトリックスにカウントする
Abstract
単一のメトリックスでのログイベントのカウント方法を示す CloudWatch Logs メトリックスフィルタの例です。
前の例と同じように、ウェブサービスアクセスログをモニタリングしたり HTTP 応答コードレベルを
モニタリングする場合があります。たとえば、HTTP 400 レベルのエラーをすべてモニタリングする場
合です。ただし、それぞれのリターンコードに 1 つずつ新しいメトリックスフィルタを指定したくない
場合があります。
以下の例は、前の例の Apache アクセスログ形式を使用して、アクセスログから 400 レベルの HTTP
コードレスポンスを含むメトリックスを作成する方法を示しています。この抽出ルールは、"(二重引
用符)の前の任意の文字、"(二重引用符)、"(二重引用符)の前の任意の文字、(スペース)、数
字、および残りの文字に一致します。
CloudWatch コンソールを使用してメトリックスフィルタを作成するには
1.
2.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Amazon Web Services General Reference の Regions and Endpoints を
参照してください。
3.
4.
5.
[Navigation] ペインの [Logs] をクリックします。
コンテンツペインでロググループを選択し、[Create Metric Filter] をクリックします。
[Define Logs Metric Filter] 画面の [Filter Pattern] フィールドに、「[ip, id, user, timestamp,
request, status_code=4*, size]」と入力します。
6.
フィルタパターンをテストするには、[Select Log Data to Test] リストでメトリックスフィルタを
テストするロググループを選択し、[Test Pattern] をクリックします。
7.
[Results] に、ログファイルで見つかったフィルタパターンの発生数を示す CloudWatch Logs のメッ
セージが表示されます。
Note
詳細結果を表示するには、[Show test results] をクリックします。
API Version 2010-08-01
169
Amazon CloudWatch 開発者ガイド
メトリックスフィルタの作成
8.
[Assign Metric] をクリックし、[Create Metric Filter and Assign a Metric] 画面の [Filter Name] フィー
ルドに「HTTP4xxErrors」と入力します。
9. [Metric Details] の [Metric Namespace] フィールドに、「YourNameSpace」と入力します。
10. [Metric Name] フィールドに「HTTP4xxErrors」と入力し、[Create Filter] をクリックします。
AWS CLI を使用してメトリックスにフィルタを作成するには
•
コマンドプロンプトで、次のように入力します。
% aws logs put-metric-filter \
--log-group-name MyApp/access.log \
--filter-name HTTP4xxErrors \
--filter-pattern '[ip, id, user, timestamp, request, status_code=4*, size]'
\
--metric-transformations \
metricName=HTTP4xxErrors,metricNamespace=YourNamespace,metricValue=1
put-event 呼び出しの次のデータを使用してこのルールをテストできます。前の例のモニタリングのルー
ルを削除していない場合は、2 つの異なるメトリックスを生成します。
127.0.0.1
127.0.0.1
127.0.0.1
127.0.0.1
127.0.0.1
127.0.0.1
3
-
-
[24/Sep/2013:11:49:52 -0700] "GET /index.html HTTP/1.1" 404 287
[24/Sep/2013:11:49:52 -0700] "GET /index.html HTTP/1.1" 404 287
[24/Sep/2013:11:50:51 -0700] "GET /~test/ HTTP/1.1" 200 3
[24/Sep/2013:11:50:51 -0700] "GET /favicon.ico HTTP/1.1" 404 308
[24/Sep/2013:11:50:51 -0700] "GET /favicon.ico HTTP/1.1" 404 308
[24/Sep/2013:11:51:34 -0700] "GET /~test/index.html HTTP/1.1" 200
例: Apache ログから転送されたバイト数の抽出
Abstract
Apache ログから転送されたバイト数の抽出方法を示す CloudWatch Logs メトリックスフィルタの例です。
カウントの代わりに、個別のイベントログ内の値をメトリックス値に使用する方が役に立つ場合があり
ます。この例では、Apache ウェブサーバーが転送したバイト数を計測するメトリックスを作成する抽
出ルールの作成方法を示しています。
この抽出ルールは、ログイベントの 7 つのフィールドと一致します。メトリックス値は 7 番目に一致
したトークンの値です。抽出ルールの metricValue フィールドにある「$7」がトークンの参照です。
CloudWatch コンソールを使用してメトリックスフィルタを作成するには
1.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
2.
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Amazon Web Services General Reference の Regions and Endpoints を
参照してください。
API Version 2010-08-01
170
Amazon CloudWatch 開発者ガイド
メトリックスフィルタの作成
3.
[Navigation] ペインの [Logs] をクリックします。
4.
5.
コンテンツペインでロググループを選択し、[Create Metric Filter] をクリックします。
Define Logs Metric Filter 画面の [Filter Pattern] フィールドに、「[ip, id, user, timestamp,
request, status_code, size]」と入力します。
6.
フィルタパターンをテストするには、[Select Log Data to Test] リストでメトリックスフィルタを
テストするロググループを選択し、[Test Pattern] をクリックします。
[Results] に、ログファイルで見つかったフィルタパターンの発生数を示す CloudWatch Logs のメッ
セージが表示されます。
7.
Note
詳細結果を表示するには、[Show test results] をクリックします。
8.
[Assign Metric] をクリックし、[Create Metric Filter and Assign a Metric] 画面の [Filter Name] フィー
ルドに「size」と入力します。
9. [Metric Details] の [Metric Namespace] フィールドに「YourNameSpace」と入力します。
10. [Metric Name] フィールドに「BytesTransferred」と入力します。
11. [Metric Value] フィールドに「$size」と入力し、[Create Filter] をクリックします。
Note
[Metric Value] フィールドが表示されない場合は、[Show advanced metric settings] をク
リックします。
AWS CLI を使用してメトリックスにフィルタを作成するには
•
コマンドプロンプトで、次のように入力します。
% aws logs put-metric-filter \
--log-group-name MyApp/access.log \
--filter-name BytesTransferred \
--filter-pattern '[ip, id, user, timestamp, request, status_code=4*, size]'
\
--metric-transformations \
metricName=BytesTransferred,metricNamespace=YourNamespace,metric
Value=$size
API Version 2010-08-01
171
Amazon CloudWatch 開発者ガイド
メトリックスフィルタの一覧表示
put-log-event 呼び出しの次のデータを使用してこのルールをテストできます。前の例のモニタリング
ルールを削除していない場合は、2 つの異なるメトリックスを生成します。
127.0.0.1
127.0.0.1
127.0.0.1
127.0.0.1
127.0.0.1
127.0.0.1
3
-
-
[24/Sep/2013:11:49:52 -0700] "GET /index.html HTTP/1.1" 404 287
[24/Sep/2013:11:49:52 -0700] "GET /index.html HTTP/1.1" 404 287
[24/Sep/2013:11:50:51 -0700] "GET /~test/ HTTP/1.1" 200 3
[24/Sep/2013:11:50:51 -0700] "GET /favicon.ico HTTP/1.1" 404 308
[24/Sep/2013:11:50:51 -0700] "GET /favicon.ico HTTP/1.1" 404 308
[24/Sep/2013:11:51:34 -0700] "GET /~test/index.html HTTP/1.1" 200
メトリックスフィルタの一覧表示
Abstract
グループ内のすべての CloudWatch Logs メトリックスフィルタを一覧表示します。
ロググループ内のメトリックスフィルタを一覧表示できます。
CloudWatch コンソールを使用してメトリックスフィルタを一覧表示するには
1.
2.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Amazon Web Services General Reference の Regions and Endpoints を
参照してください。
3.
[Navigation] ペインの [Logs] をクリックします。
4.
コンテンツペインのロググループのリストで、[Metric Filters] 列でフィルター数をクリックします。
[Log Groups > Filters for] 画面にそのロググループに関連付けられたすべてのメトリックスフィル
タが一覧表示されます。
AWS CLI を使用してメトリックスフィルタを一覧表示するには
•
コマンドプロンプトで、次のように入力します。
% aws logs describe-metric-filters --log-group-name MyApp/access.log
{
"metricFilters": [
{
API Version 2010-08-01
172
Amazon CloudWatch 開発者ガイド
メトリックスフィルタの削除
"filterName": "HTTP404Errors",
"metricTransformations": [
{
"metricValue": "1",
"metricNamespace": "YourNamespace",
"metricName": "PageNotFoundCount"
}
],
"creationTime": 1399277571078,
"filterPattern": "[ip, id, user, timestamp, request,
status_code=404, size]"
}
]
}
メトリックスフィルタの削除
Abstract
CloudWatch Logs メトリックスフィルタを削除します。
ポリシーは、名前と所属するロググループで識別されます。
CloudWatch コンソールを使用してメトリックスフィルタを削除するには
1.
2.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーで、ニーズに合ったリージョンを選択
します。詳細については、Amazon Web Services General Reference の Regions and Endpoints を
参照してください。
3.
4.
[Navigation] ペインの [Logs] をクリックします。
コンテンツペインの [Metric Filter] 列で、削除するメトリックスフィルタをクリックします。
5.
6.
[Logs Metric Filters] 画面のメトリックスフィルタで、[Delete Filter] をクリックします。
[Delete Metric filter] ダイアログボックスで、[Yes, Delete] をクリックします。
AWS CLI を使用してメトリックスフィルタを削除するには
•
コマンドプロンプトで、次のように入力します。
API Version 2010-08-01
173
Amazon CloudWatch 開発者ガイド
フィルタパターンを使用したログデータ検索
% aws logs delete-metric-filter --log-group-name MyApp/access.log \
--filter-name YourFilterName
フィルタパターンを使用したログデータ検索
Abstract
フィルタパターンを使用して CloudWatch ログデータを検索します。
AWS CLI の CloudWatch Logs コマンドまたは AWS SDK により、Amazon CloudWatch コンソールの
フィルタとパターンの構文 (p. 158) を使用してログデータを検索できます。ロググループ内のすべての
ログストリームを検索するか、このデータのサブセットを検索できます。各検索を実行すると、最大
で、見つかったデータの最初のページと、データの次のページを取得するか検索を続行するための
NextToken が返されます。結果が返されない場合は、検索を続行できます。
クエリを実行する時間範囲を設定し、検索範囲を制限することができます。広い範囲から開始して関心
のあるログ行が収まっている場所を確認した後、時間範囲を短縮し、関心のある時間範囲のログまで
ビューを絞り込みます。
Amazon CloudWatch コンソールを使用してログを検索するには
1.
2.
3.
4.
5.
6.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーから、ログデータが保存されている
リージョンを選択します。詳細については、Amazon Web Services General Reference の Regions
and Endpoints を参照してください。
[Navigation] ペインの [Logs] をクリックします。
[Log Groups] で、検索するログストリームを含むロググループの名前をクリックします。
[Log Streams] リストで、検索するログストリームの名前をクリックします。
[Filter] フィールドで使用するメトリックスフィルタの構文を入力し、[Enter] を押します。
メトリックスフィルタの構文とクエリ検索の詳細については、フィルタとパターンの構文 (p. 158)
を参照してください。
一定の時間範囲におけるすべてのログエントリを検索するには Amazon CloudWatch コンソー
ルを使用する
1.
2.
3.
4.
5.
6.
https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。
必要ならば、リージョンを変更します。ナビゲーションバーから、ログデータが保存されている
リージョンを選択します。詳細については、Amazon Web Services General Reference の Regions
and Endpoints を参照してください。
[Navigation] ペインの [Logs] をクリックします。
[Log Groups] で、検索するログストリームを含むロググループの名前をクリックします。
[Log Streams] リストから、[Search Events] をクリックします。
[Filter] フィールドで使用するメトリックスフィルタの構文を入力し、日時フィールドから日付と時
間枠を選択して、[Enter] を押します。
メトリックスフィルタの構文とクエリ検索の詳細については、フィルタとパターンの構文 (p. 158)
を参照してください。
API Version 2010-08-01
174
Amazon CloudWatch 開発者ガイド
フィルタパターンを使用したログデータ検索
一定の時間範囲におけるすべてのログエントリを検索するには AWS CLI の使用
1.
コマンドプロンプトで Amazon CloudWatch コマンドを使用して AWS CLI を更新するには、次の
ように入力します。
pip install --upgrade --extra-index-url=http://aws-cloudwatch.s3-websiteus-east-1.amazonaws.com/ awscli-cwlogs aws configure set plugins.cwlogs cwlogs
2.
インストールが完了したら、ステップ 2 に進みます。
コマンドプロンプトで、次のように入力します。
aws logs filter-log-events --log-group-name <GROUP> [--log-stream-names
<LIST_OF_STREAMS_TO_SEARCH>] [--start-time <YYYY-MM-DDTHH:mm:SSZ>] [--endtime <YYYY-MM-DDTHH:mm:SSZ>] [--filter-pattern <VALID_METRIC_FILTER_PATTERN>]
aws logs filter コマンドは、さまざまなストリームから 1 つの結果セットに結果をインター
リーブできます。aws logs filter コマンドは次のパラメータを使用します。
--log-group-name
必須検索するロググループの名前を指定します。
--log-stream-names
グループ内で検索するログストリームを指定します。デフォルトでは、グループ内のすべての
ストリームが検索されます。複数のログストリームを指定するには、それぞれ引用符で囲んで
入力します(例: "streamName1" "streamName2" "streamName3")。
--filter-pattern
フィルタリングするフィルタパターン。
--interleaved
検索されたすべてのストリームのログイベントを検索結果にインターリーブするかどうかを指
定します。
--start-time
オプション。検索するログイベントの開始時間を指定します。開始時刻は、ISO8601 形式に
する必要があります(YYYY-MM-DDThh:mm:ssZ)。たとえば、2013-12-23T14:01:00Z です。
--end-time
オプション。検索するログイベントの終了時刻を指定します。終了時刻は、ISO8601 形式に
する必要があります(YYYY-MM-DDThh:mm:ssZ)。たとえば、2013-12-23T14:01:00Z です。
--output-format
オプション。検索結果の出力形式を指定します。デフォルトは {logStreamName} {timestamp}
{message} です。
AWS CLI を使用して FilterLogEvents リクエストを実行するには
1.
コマンドプロンプトで、次のように入力します。
aws logs filter-log-events --log-group-name <GROUP> [--log-stream-names
<LIST_OF_STREAMS_TO_SEARCH>] [--nextToken
<NEXT_TOKEN>] [--start-time <UNIX_TIMESTAMP>] [-end-time <UNIX_TIMESTAMP>] [--filter-pattern <VALID_METRIC_FILTER_PATTERN>]
上記の例では、--log-group-name <GROUP> が必須です。
2.
検索結果を指定したフィルタパターンと一致するものに制限するには、--filter-pattern
<VALID_METRIC_FILTER_PATTERN> を使用します。
API Version 2010-08-01
175
Amazon CloudWatch 開発者ガイド
サブスクリプションを使用したログデータのリアルタイム
処理
3.
検索対象をわずかなログストリームに制限するには、--log-stream-names
<LIST_OF_STREAMS_TO_SEARCH> パラメータを使用してログストリームの名前をリストし、指定
のロググループ内を検索します。
トラブルシューティング
[Search takes too long to complete]
ログデータが多い場合、検索の完了に時間がかかる場合があります。検索の速度を上げるには、次を実
行します:
• 検索対象を関心のあるログストリームのみに制限します。たとえば、ロググループに 1000 のログス
トリームがある状況で、関連することがわかっているログストリーム 3 つのみを確認する場合、検索
対象をロググループ内のこれらのログストリームのみに制限できます。
• 時間範囲を短く、細かくし、検索対象のデータ量を減らし、クエリの速度を上げます。
サブスクリプションを使用したログデータのリア
ルタイム処理
Abstract
CloudWatch ログサブスクリプションを使用して、ログデータをリアルタイムで処理します。
サブスクリプションを使用して CloudWatch Logs からのログイベントのリアルタイムフィードにアク
セスし、カスタム処理、分析、他のシステムへのロードを行うために Amazon Kinesis ストリームに配
信することができます。ログイベントへのサブスクライブを開始するには、イベントの配信先の Amazon
Kinesis ストリームと、Amazon Kinesis ストリームにデータを書き込むのに必要な権限を CloudWatch
Logs に付与する AWS Identity and Access Management (IAM) ロールを作成する必要があります。サブ
スクリプションフィルタは、Amazon Kinesis ストリームに配信されるログイベントのフィルタリング
に使用するフィルタパターンと、一致するログイベントの送信先に関する情報を定義します。各サブス
クリプションフィルタは以下のキー要素で構成されています。
log group name
サブスクリプションフィルタを関連付けるロググループ。このロググループにアップロードされた
すべてログイベントは、サブスクリプションフィルタの対象となり、フィルタパターンがログイベ
ントに一致する場合は選択された Amazon Kinesis ストリームに配信されます。
フィルタパターン
CloudWatch Logs が各ログイベントのデータをどのように解釈するかの記号による説明と、宛先
Amazon Kinesis ストリームに配信される内容を制限するフィルタリング表現。フィルタパターン
の構文の詳細については、「フィルタとパターンの構文 (p. 158)」を参照してください。
destination arn
サブスクリプションフィードの宛先として使用する Amazon Kinesis ストリームの Amazon リソー
スネーム (ARN)。
role arn
選択された Amazon Kinesis ストリームにデータを置くのに必要な権限を CloudWatch Logs に付与
する IAM ロール。
API Version 2010-08-01
176
Amazon CloudWatch 開発者ガイド
サブスクリプションフィルタの使用
サブスクリプションフィルタの使用
Abstract
AWS CloudTrail イベントを含むロググループにサブスクリプションフィルタを関連付けます。
次の例では、サブスクリプションフィルタが、AWS CloudTrail イベントを含むロググループと関連付
けられ、"Root" AWS 認証情報により実行されたすべてのログアクティビティが "RootAccess" と呼ば
れる Amazon Kinesis ストリームに配信されます。AWS CloudTrail イベントを CloudWatch Logs に送
信する方法の詳細については、『AWS CloudTrail User Guide』の「CloudTrail イベントの CloudWatch
Logs への送信」を参照してください。
サブスクリプションフィルタをロググループに関連付けるには
1.
宛先 Amazon Kinesis ストリームを作成します。コマンドプロンプトで、次のように入力します。
aws kinesis create-stream --stream-name "RootAccess" --shard-count 1
2.
Amazon Kinesis ストリームが [Active] になるまで待ちます。Amazon Kinesis describe-stream コ
マンドを使用して、StreamDescription.StreamStatus プロパティをチェックすることができます。
さらに、StreamDescription.StreamARN 値を後で CloudWatch Logs に渡すため、書き留めます。
aws kinesis describe-stream --stream-name "RootAccess"
{
"StreamDescription": {
"StreamStatus": "ACTIVE",
"StreamName": "RootAccess",
"StreamARN": "arn:aws:kinesis:us-east-1:123456789012:stream/RootAc
cess",
"Shards": [
{
"ShardId": "shardId-000000000000",
"HashKeyRange": {
"EndingHashKey":
"340282366920938463463374607431768211455",
"StartingHashKey": "0"
},
"SequenceNumberRange": {
"StartingSequenceNumber":
"49551135218688818456679503831981458784591352702181572610"
}
}
]
}
}
ストリームが [Active] と表示されるまで、1、2 分かかることがあります。
3.
Amazon Kinesis ストリームにデータを置く権限を CloudWatch Logs に付与する IAM ロールを作
成します。まず、ファイル ~/TrustPolicyForCWL.json で信頼ポリシーを作成する必要があります。
{
"Statement": {
"Effect": "Allow",
API Version 2010-08-01
177
Amazon CloudWatch 開発者ガイド
サブスクリプションフィルタの使用
"Principal": { "Service": "logs.us-east-1.amazonaws.com" },
"Action": "sts:AssumeRole"
}
}
4.
create-role コマンドを使用し、信頼ポリシーファイルを指定して IAM ロールを作成します。返さ
れた Role.Arn 値を後で CloudWatch Logs に渡すため、書き留めます。
$ aws iam create-role \
--role-name CWLtoKinesisRole \
--assume-role-policy-document file://~/TrustPolicyForCWL.json
{
"Role": {
"AssumeRolePolicyDocument": {
"Statement": {
"Action": "sts:AssumeRole",
"Effect": "Allow",
"Principal": {
"Service": "logs.us-east-1.amazonaws.com"
}
}
},
"RoleId": "AAOIIAH450GAB4HC5F431",
"CreateDate": "2015-05-29T13:46:29.431Z",
"RoleName": "CWLtoKinesisRole",
"Path": "/",
"Arn": "arn:aws:iam::123456789012:role/CWLtoKinesisRole"
}
}
5.
権限ポリシーを作成し、CloudWatch Logs がアカウントで実行できるアクションを定義します。
まず、ファイル ~/PermissionsForCWL.json で権限ポリシーを作成する必要があります。
{
"Statement": [
{
"Effect": "Allow",
"Action": "kinesis:PutRecord",
"Resource": "arn:aws:kinesis:us-east-1:123456789012:stream/RootAccess"
},
{
"Effect": "Allow",
"Action": "iam:PassRole",
"Resource": "arn:aws:iam::123456789012:role/CWLtoKinesisRole"
}
]
}
6.
put-role-policy コマンドを使用して、権限ポリシーをロールに関連付けます。
aws iam put-role-policy --role-name CWLtoKinesisRole --policy-name Permis
sions-Policy-For-CWL --policy-document file://~/PermissionsForCWL.json
API Version 2010-08-01
178
Amazon CloudWatch 開発者ガイド
サブスクリプションフィルタの使用
7.
Amazon Kinesis ストリームが [Active] 状態になり、IAM ロールを作成したら、CloudWatch Logs
サブスクリプションフィルタを作成できます。サブスクリプションフィルタにより、選択されたロ
ググループから Amazon Kinesis ストリームへのリアルタイムログデータの流れがすぐに開始され
ます。
aws logs put-subscription-filter \
--log-group-name "CloudTrail" \
--filter-name "RootAccess" \
--filter-pattern "{$.userIdentity.type = Root}" \
--destination-arn "arn:aws:kinesis:us-east1:123456789012:stream/RootAccess" \
--role-arn "arn:aws:iam::123456789012:role/CWLtoKinesisRole"
8.
サブスクリプションフィルタを設定したら、CloudWatch Logs によりフィルタパターンに一致す
るすべての受信ログイベントが Amazon Kinesis ストリームに転送されます。これが起きているこ
とは、Amazon Kinesis シャードイテレータを取得し、Amazon Kinesis get-records コマンドを使
用していくつかの Amazon Kinesis レコードを取得することで確認できます。
$ aws kinesis get-shard-iterator \
--stream-name RootAccess \
--shard-id shardId-000000000000 \
--shard-iterator-type TRIM_HORIZON
{
"ShardIterator":
"AAAAAAAAAAFGU/kLvNggvndHq2UIFOw5PZc6F01s3e3afsSscRM70JS
bjIefg2ub07nk1y6CDxYR1UoGHJNP4m4NFUetzfL+wev+e2P4djJg4L9wmXKvQY
oE+rMUiFq+p4Cn3IgvqOb5dRA0yybNdRcdzvnC35KQANoHzzahK
dRGb9v4scv+3vaq+f+OIK8zM5My8ID+g6rMo7UKWeI4+IWiK2OSh0uP"
}
$ aws kinesis get-records \
--limit 10 \
--shard-iterator
"AAAAAAAAAAFGU/kLvNggvndHq2UIFOw5PZc6F01s3e3afsSscRM70JS
bjIefg2ub07nk1y6CDxYR1UoGHJNP4m4NFUetzfL+wev+e2P4djJg4L9wmXKvQY
oE+rMUiFq+p4Cn3IgvqOb5dRA0yybNdRcdzvnC35KQANoHzzahK
dRGb9v4scv+3vaq+f+OIK8zM5My8ID+g6rMo7UKWeI4+IWiK2OSh0uP"
Note
場合によっては、Amazon Kinesis がデータを返し始めるまでに、get-records コマンドを
数回繰り返す必要があります。
Amazon Kinesis の配列を含むレスポンスが表示されます。Amazon Kinesis レコードの Data 属性
は、Base64 でエンコードされており、gzip 形式で圧縮されています。raw データは、コマンドラ
インから次の UNIX コマンドを使用して調べることができます。
echo -n "<Content of Data>" | base64 -d | zcat
Base64 でデコードおよび圧縮されたデータは、次の構造を使用して JSON としてフォーマットさ
れます。
API Version 2010-08-01
179
Amazon CloudWatch 開発者ガイド
サブスクリプションフィルタの使用
{
"owner": "123456789012",
"logGroup": "CloudTrail",
"logStream": "123456789012_CloudTrail_us-east-1",
"subscriptionFilters": [
"RootAccess"
],
"messageType": "DATA_MESSAGE",
"logEvents": [
{
"id": "31953106606966983378809025079804211143289615424298221568",
"timestamp": 1432826855000,
"message": "{\"eventVersion\":\"1.03\",\"userIden
tity\":{\"type\":\"Root\"}"
},
{
"id": "31953106606966983378809025079804211143289615424298221569",
"timestamp": 1432826855000,
"message": "{\"eventVersion\":\"1.03\",\"userIden
tity\":{\"type\":\"Root\"}"
},
{
"id": "31953106606966983378809025079804211143289615424298221570",
"timestamp": 1432826855000,
"message": "{\"eventVersion\":\"1.03\",\"userIden
tity\":{\"type\":\"Root\"}"
}
]
}
上のデータ構造の主な要素は次のとおりです。
所有者
発行元ログデータの AWS アカウント ID。
logGroup
発行元ログデータのロググループ名。
logStream
発行元ログデータのログストリーム名。
subscriptionFilters
発行元ログデータと一致したサブスクリプションフィルタ名のリスト。
messageType
データメッセージは、"DATA_MESSAGE" 型を使用します。CloudWatch Logs は、主に宛先
が到達可能であるかどうかをチェックするために、"CONTROL_MESSAGE" 型の Amazon
Kinesis レコードを発行することがあります。
logEvents
ログイベントレコードの配列として表される実際のログデータ。"id" プロパティは、各ログイ
ベントの一意識別子です。
API Version 2010-08-01
180
Amazon CloudWatch 開発者ガイド
CloudTrail 内の CloudWatch 情報
AWS CloudTrail での Amazon
CloudWatch API 呼び出しのログ作成
Abstract
CloudTrail を使用して作成された CloudWatch のサンプルログが含まれます。
Amazon CloudWatch は、AWS CloudTrail と統合されています。AWS CloudTrail は、お客様の AWS
アカウントまたはその代理によって行われた API 呼び出しをキャプチャするサービスです。この情報
が集められ、指定した Amazon S3 バケットに保存されるログファイルに書き込まれます。API 呼び出
しは、Amazon CloudWatch API、Amazon CloudWatch コンソール、バックエンドコンソール、AWS
CLI の使用時に記録されます。CloudTrail によって収集された情報を使用して、Amazon CloudWatch
に対してどのようなリクエストが行われたかを判断することができます。リクエストの作成元のソース
IP アドレス、リクエストの実行者、リクエストの実行日時などです。
設定して有効化する方法など、CloudTrail の詳細については、『AWS CloudTrail User Guide』の「AWS
CloudTrail とは」を参照してください。
Topics
• CloudTrail 内の CloudWatch 情報 (p. 181)
• Amazon CloudWatch ログファイルエントリの概要 (p. 182)
CloudTrail 内の CloudWatch 情報
CloudTrail ログ作成をオンにすると、すべての Amazon CloudWatch アクションに対して行われた呼び
出しがログファイルにキャプチャされます。たとえば、EnableAlarmActions アクション、PutMetricAlarm
アクション、DescribeAlarms アクションの呼び出しが行われると、CloudTrail ログファイルにエント
リが生成されます。以下の CloudWatch アクションがサポートされています。
• PutMetricAlarm
• DescribeAlarms
• DescribeAlarmHistory
• DescribeAlarmsForMetric
• DisableAlarmActions
• EnableAlarmActions
API Version 2010-08-01
181
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch ログファイルエントリの概要
• SetAlarmState
• DeleteAlarms
これらのアクションの詳細については、Amazon CloudWatch API Reference を参照してください。
各ログエントリには、誰がリクエストを生成したかに関する情報が含まれます。たとえば、アラームの
作成または更新のリクエストが行われた場合(PutMetricAlarm)、CloudTrail は、リクエストした人ま
たはサービスのユーザー ID をログに記録します。ユーザー ID 情報は、リクエストが、ルートまたは
IAM ユーザーの認証情報を使用して送信されたか、ロールまたはフェデレーションユーザーの一時的な
認証情報を使用して送信されたか、あるいは別の AWS サービスによって送信されたかを確認するのに
役立ちます。CloudTrail フィールドの詳細については、『AWS CloudTrail User Guide』の「CloudTrail
イベントリファレンス」を参照してください。
必要な場合はログファイルを自身のバケットに保管できますが、ログファイルを自動的にアーカイブま
たは削除するにように Amazon S3 ライフサイクルルールを定義することもできます。デフォルトでは
Amazon S3 のサーバー側の暗号化(SSE)を使用して、ログファイルが暗号化されます。
Amazon CloudWatch ログファイルエントリの概要
CloudTrail ログファイルには、複数の JSON フォーマットされたイベントから成る、1 つ以上のログエ
ントリを含めることができます。ログエントリは任意の送信元からの単一のリクエストを表し、リクエ
ストされたアクション、入力パラメーター、アクションの日時などに関する情報が含まれます。ログエ
ントリは、特定の順序で表示されません。つまり、パブリック API 呼び出しの順序付けたスタック ト
レースを表しません。
次のログファイルレコードは、ユーザーが PutMetricAlarm アクションを呼び出したことを示します。
{
"Records": [{
"eventVersion": "1.01",
"userIdentity": {
"type": "Root",
"principalId": "EX_PRINCIPAL_ID",
"arn": "arn:aws:iam::123456789012:root",
"accountId": "123456789012",
"accessKeyId": "EXAMPLE_KEY_ID"
},
"eventTime": "2014-03-23T21:50:34Z",
"eventSource": "monitoring.amazonaws.com",
"eventName": "PutMetricAlarm",
"awsRegion": "us-east-1",
"sourceIPAddress": "127.0.0.1",
"userAgent": "aws-sdk-ruby2/2.0.0.rc4 ruby/1.9.3 x86_64-linux
Seahorse/0.1.0",
"requestParameters": {
"threshold": 50.0,
"period": 60,
"metricName": "CloudTrail Test",
"evaluationPeriods": 3,
"comparisonOperator": "GreaterThanThreshold",
"namespace": "AWS/CloudWatch",
"alarmName": "CloudTrail Test Alarm",
"statistic": "Sum"
},
"responseElements": null,
API Version 2010-08-01
182
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch ログファイルエントリの概要
"requestID": "29184022-b2d5-11e3-a63d-9b463e6d0ff0",
"eventID": "b096d5b7-dcf2-4399-998b-5a53eca76a27"
},
..additional entries
]
}
次のログファイルレコードは、ユーザーが SetAlarmState アクションを呼び出したことを示します。
{
"Records": [
{
"eventVersion": "1.01",
"userIdentity": {
"type": "Root",
"principalId": "EX_PRINCIPAL_ID",
"arn": "arn:aws:iam::123456789012:root",
"accountId": "123456789012",
"accessKeyId": "EXAMPLE_KEY_ID"
},
"eventTime": "2014-03-23T21:50:34Z",
"eventSource": "monitoring.amazonaws.com",
"eventName": "SetAlarmState",
"awsRegion": "us-east-1",
"sourceIPAddress": "127.0.0.1",
"userAgent": "aws-sdk-ruby2/2.0.0.rc4 ruby/1.9.3 x86_64-linux
Seahorse/0.1.0",
"requestParameters": {
"stateValue": "OK",
"stateReason": "Test",
"alarmName": "CloudTrail Test Alarm"
},
"responseElements": null,
"requestID": "297a5d55-b2d5-11e3-a63d-9b463e6d0ff0",
"eventID": "dfaf642c-87d9-418f-9110-1297aa97d41f"
},
...additional entries
]
}
次のログファイルレコードは、ユーザーが EnableAlarmActions アクションを呼び出したことを示しま
す。
{
"Records": [
{
"eventVersion": "1.01",
"userIdentity": {
"type": "Root",
"principalId": "EX_PRINCIPAL_ID",
"arn": "arn:aws:iam::123456789012:root",
"accountId": "123456789012",
"accessKeyId": "EXAMPLE_KEY_ID"
},
"eventTime": "2014-03-23T21:50:34Z",
"eventSource": "monitoring.amazonaws.com",
API Version 2010-08-01
183
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch ログファイルエントリの概要
"eventName": "EnableAlarmActions",
"awsRegion": "us-east-1",
"sourceIPAddress": "127.0.0.1",
"userAgent": "aws-sdk-ruby2/2.0.0.rc4 ruby/1.9.3 x86_64-linux
Seahorse/0.1.0",
"requestParameters": {
"alarmNames": ["CloudTrail Test Alarm"]
},
"responseElements": null,
"requestID": "29a516d7-b2d5-11e3-a63d-9b463e6d0ff0",
"eventID": "acac5afb-8d5c-4a5d-9096-f9f985460969"
},
...additional entries
]
}
次のログファイルレコードは、ユーザーが DisableAlarmActions アクションを呼び出したことを示しま
す。
{
"Records": [
{
"eventVersion": "1.01",
"userIdentity": {
"type": "Root",
"principalId": "EX_PRINCIPAL_ID",
"arn": "arn:aws:iam::123456789012:root",
"accountId": "123456789012",
"accessKeyId": "EXAMPLE_KEY_ID"
},
"eventTime": "2014-03-23T21:50:35Z",
"eventSource": "monitoring.amazonaws.com",
"eventName": "DisableAlarmActions",
"awsRegion": "us-east-1",
"sourceIPAddress": "127.0.0.1",
"userAgent": "aws-sdk-ruby2/2.0.0.rc4 ruby/1.9.3 x86_64-linux
Seahorse/0.1.0",
"requestParameters": {
"alarmNames": ["CloudTrail Test Alarm"]
},
"responseElements": null,
"requestID": "29c34d39-b2d5-11e3-a63d-9b463e6d0ff0",
"eventID": "593480d0-44f9-49cc-94c9-7a4757f2e545"
},
...additional entries
]
}
次のログファイルレコードは、ユーザーが DescribeAlarmsForMetric アクションを呼び出したことを示
します。
{
"Records": [
{
"eventVersion": "1.01",
"userIdentity": {
API Version 2010-08-01
184
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch ログファイルエントリの概要
"type": "Root",
"principalId": "EX_PRINCIPAL_ID",
"arn": "arn:aws:iam::123456789012:root",
"accountId": "123456789012",
"accessKeyId": "EXAMPLE_KEY_ID"
},
"eventTime": "2014-03-23T21:50:35Z",
"eventSource": "monitoring.amazonaws.com",
"eventName": "DescribeAlarmsForMetric",
"awsRegion": "us-east-1",
"sourceIPAddress": "10.61.89.162",
"userAgent": "aws-sdk-ruby2/2.0.0.rc4 ruby/1.9.3 x86_64-linux
Seahorse/0.1.0",
"requestParameters": {
"namespace": "AWS/CloudWatch",
"metricName": "CloudTrail Test Metric"
},
"responseElements": null,
"requestID": "2a412fcd-b2d5-11e3-a63d-9b463e6d0ff0",
"eventID": "51065fac-ef74-4e69-b326-24da63cbdc2e"
},
...additional entries
]
}
次のログファイルレコードは、ユーザーが DescribeAlarms アクションを呼び出したことを示します。
{
"Records": [{
"eventVersion": "1.01",
"userIdentity": {
"type": "Root",
"principalId": "EX_PRINCIPAL_ID",
"arn": "arn:aws:iam::123456789012:root",
"accountId": "123456789012",
"accessKeyId": "EXAMPLE_KEY_ID"
},
"eventTime": "2014-03-14T22:37:54Z",
"eventSource": "monitoring.amazonaws.com",
"eventName": "DescribeAlarms",
"awsRegion": "us-east-1",
"sourceIPAddress": "127.0.0.1",
"requestParameters": {
"alarmNames": ["alarm-xx-123456789012-test_notification_associ
ation_manipulation_20100801-TC_MonitorsCRUD20100801--ROYU"]
},
"responseElements": null,
"requestID": "3c6b8f0a-9a0f-44fd-a2be-95a6d032f16e",
"eventID": "260e3430-884a-4971-a7cf-da2ad378b70c"
},
...additional entries
]
}
次のログファイルレコードは、ユーザーが DeleteAlarms アクションを呼び出したことを示します。
API Version 2010-08-01
185
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch ログファイルエントリの概要
{
"Records": [
{
"eventVersion": "1.01",
"userIdentity": {
"type": "Root",
"principalId": "EX_PRINCIPAL_ID",
"arn": "arn:aws:iam::123456789012:root",
"accountId": "123456789012",
"accessKeyId": "EXAMPLE_KEY_ID"
},
"eventTime": "2014-03-14T22:38:05Z",
"eventSource": "monitoring.amazonaws.com",
"eventName": "DeleteAlarms",
"awsRegion": "us-east-1",
sourceIPAddress": "127.0.0.1",
"requestParameters": {
"alarmNames": ["alarm-xx-123456789012-test_notification_associ
ation_manipulation_20100801-TC_MonitorsCRUD20100801--ROYU"]
},
"responseElements": null,
"requestID": "2ed028b7-7956-44a7-a7ab-044bb774af24",
"eventID": "352f341b-2b28-4e9e-8d57-961d11ce9946"
},
...additional entries
]
}
API Version 2010-08-01
186
Amazon CloudWatch 開発者ガイド
Amazon EC2 インスタンスのモニタ
リングスクリプト
Abstract
Linux または Windows で実行する Amazon EC2 インスタンスのモニタリングスクリプトを用いて、CloudWatch
カスタムメトリックスを作成し、使用します。
Amazon CloudWatch Monitoring Scripts for Amazon Elastic Compute Cloud(Amazon EC2)の Linux
ベースおよび Windows ベースのインスタンスは、Amazon CloudWatch カスタムメトリックスを作成/
利用する方法を示しています。これらの Perl スクリプトのサンプルは、Linux インスタンスのメモリ、
スワップ、およびディスクスペースの使用状況メトリックスをレポートする、完全に機能する例で構成
されます。Windows 用のスクリプトは PowerShell スクリプトのサンプルで、Windows インスタンス
に関する、メモリ、ページファイル、およびディスクスペースの使用状況メトリックスをレポートす
る、完全に機能する例で構成されます。Linux 用および Windows 用の CloudWatch Monitoring Scripts
は、アマゾン ウェブ サービス(AWS)サンプルコードライブラリからダウンロードして、Linux ベー
スまたは Windows ベースのインスタンスにインストールできます。
Important
これらのスクリプトは、サンプルとして提供されています。そのため、「この状態のまま」ス
クリプトは提供され、サポートはされません。
Note
これらのスクリプトの利用については、カスタムメトリックスの通常の Amazon CloudWatch
無料利用枠の量と利用料金が適用されます。詳細については、Amazon CloudWatch 料金表ペー
ジを参照してください。
Topics
• Amazon CloudWatch Monitoring Scripts for Linux (p. 188)
• Amazon CloudWatch Monitoring Scripts for Windows (p. 195)
API Version 2010-08-01
187
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch Monitoring Scripts for Linux
Amazon CloudWatch Monitoring Scripts for Linux
Abstract
モニタリングスクリプトを使用して Amazon EC2 Linux インスタンスのカスタムメトリックスを作成し、使用する
方法を説明します。
Amazon CloudWatch Monitoring Scripts for Linux は、Amazon CloudWatch カスタムメトリックスを作
成し利用する方法を示した Perl スクリプトのサンプル集です。このスクリプトは、Elastic Compute
Cloud(Amazon EC2)Linux インスタンスのメモリ、スワップ、およびディスクスペースの使用状況
メトリックスをレポートする、完全に機能する例で構成されます。
Topics
• 前提条件 (p. 188)
• ご利用開始にあたって (p. 190)
• スクリプトの使用 (p. 191)
• AWS マネジメントコンソールでのカスタムメトリックスの表示 (p. 195)
Amazon CloudWatch Monitoring Scripts for Linux は、AWS のサンプルコードライブラリからダウンロー
ドできます。
これらのモニタリングスクリプトは、Linux オペレーティングシステムを実行している Amazon EC2 イ
ンスタンスで使用することを目的として記述されています。これらのスクリプトは、以下の Amazon
マシンイメージ(AMI)の 32 ビットおよび 64 ビットバージョンでテスト済みです。
•
•
•
•
Amazon Linux 2014.09.2
Red Hat Enterprise Linux 6.6
SUSE Linux Enterprise Server 12
Ubuntu Server 14.04
前提条件
Linux のバージョンによっては、追加の手順を実行する必要があります。
Amazon Linux AMI
Amazon Linux AMI バージョン 2014.03 以降を実行している場合は、スクリプトが動作していることを
モニタリングするために、追加の Perl モジュールをいくつか追加する必要があります。サーバーを設
定するには、次の手順に従います。
以前のバージョンのスクリプトからアップグレードするには
•
Amazon Linux AMI インスタンスにログオンし、以下のパッケージをインストールします。
$ sudo yum install perl-DateTime
スクリプトを初めてインストールする場合
•
Amazon Linux AMI インスタンスにログオンし、以下のパッケージをインストールします。
API Version 2010-08-01
188
Amazon CloudWatch 開発者ガイド
前提条件
$ sudo yum install perl-DateTime perl-Sys-Syslog perl-LWP-Protocol-https
Red Hat Enterprise Linux
Red Hat Enterprise Linux を実行している場合は、スクリプトが動作していることをモニタリングする
ために、追加の Perl モジュールをいくつか追加する必要があります。サーバーを設定するには、次の
手順に従います。
以前のバージョンのスクリプトからアップグレードするには
1.
Red Hat Enterprise Linux インスタンスにログオンします。
2.
コマンドプロンプトで以下のように入力し、次のパッケージをインストールします。
$ sudo yum install perl-DateTime
3.
すべてのプロンプトで sudo perl -MCPAN -e shell と入力し、その後 yes と入力します。
4.
cpan[1]> メッセージで install Bundle::LWP6 LWP と入力して、LWP バンドルをインストー
ルし LWP バージョン 6.13 に更新します。すべてのメッセージで yes と入力します。
5.
次のパッケージをインストールします。
$ sudo yum install perl-DateTime perl-Sys-Syslog
スクリプトを初めてインストールする場合
1.
2.
3.
4.
Red Hat Enterprise Linux インスタンスにログオンします。
コマンドプロンプトで「sudo perl -MCPAN -e shell」と入力し、すべてのプロンプトで「yes」
と入力します。
cpan[1]> メッセージで install Bundle::LWP6 LWP と入力して、LWP バンドルをインストー
ルし LWP バージョン 6.13 に更新します。すべてのメッセージで yes と入力します。
次のパッケージをインストールします。
$ sudo yum install perl-DateTime perl-Sys-Syslog
SUSE Linux Enterprise Server
SUSE Linux Enterprise Server を実行している場合は、スクリプトが動作していることをモニタリング
するために、追加の Perl モジュールをいくつか追加する必要があります。サーバーを設定するには、
次の手順に従います。
以前のバージョンのスクリプトからアップグレードするには
•
SUSE Linux Enterprise Server インスタンスにログオンし、以下のパッケージをインストールしま
す。
$ sudo zypper install perl-DateTime
API Version 2010-08-01
189
Amazon CloudWatch 開発者ガイド
ご利用開始にあたって
スクリプトを初めてインストールする場合
•
SUSE Linux Enterprise Server インスタンスにログオンし、以下のパッケージをインストールしま
す。
$ sudo zypper install perl-DateTime
$ sudo zypper install –y "perl(LWP::Protocol::https)"
Ubuntu Server
Ubuntu Server を実行している場合は、以下の手順を実行してサーバーを設定してください。
以前のバージョンのスクリプトからアップグレードするには
•
Ubuntu Server のインスタンスにログオンして、次のパッケージをインストールします。
$ sudo apt-get install libdatetime-perl
スクリプトを初めてインストールする場合
•
Ubuntu Server インスタンスにログオンし、以下のパッケージをインストールします。
$ sudo apt-get update
$ sudo apt-get install unzip
$ sudo apt-get install libwww-perl libdatetime-perl
Amazon EC2 Linux インスタンスに接続する方法については、『Linux インスタンス用 Amazon EC2
ユーザーガイド』の「Linux インスタンスへの接続」を参照してください。
ご利用開始にあたって
次のステップでは、Amazon CloudWatch モニタリングスクリプトをダウンロードして解凍し、EC2
Linux インスタンスで設定する方法を説明しています。
スクリプトをダウンロード、インストール、設定するには
•
コマンドプロンプトを開き、スクリプトの保存先となるフォルダーに移動し、次のように入力しま
す。
wget http://aws-cloudwatch.s3.amazonaws.com/downloads/CloudWatchMonitoring
Scripts-1.2.1.zip
unzip CloudWatchMonitoringScripts-1.2.1.zip
API Version 2010-08-01
190
Amazon CloudWatch 開発者ガイド
スクリプトの使用
rm CloudWatchMonitoringScripts-1.2.1.zip
cd aws-scripts-mon
CloudWatchMonitoringScripts-1.2.1.zip パッケージには、以下のファイルが含まれています。
• CloudWatchClient.pm – 他のスクリプトからの Amazon CloudWatch の呼び出しを簡易化する共
有 Perl モジュールです。
• mon-put-instance-data.pl – Amazon EC2 インスタンスでシステムメトリックス(メモリ、スワッ
プ、ディスクスペースの使用状況)を収集し、Amazon CloudWatch に送信します。
• mon-get-instance-stats.pl – Amazon CloudWatch に対してクエリを実行し、このスクリプトの実
行対象である EC2 インスタンスの最新の使用状況統計を表示します。
• [awscreds.template] – お客様のアクセスキー ID とシークレットアクセスキーを格納する AWS
認証情報のファイルテンプレートです。
• [LICENSE.txt] – Apache 2.0 ライセンスが記載されたテキストファイルです。
• [NOTICE.txt] – 著作権情報です。
スクリプトの使用
mon-put-instance-data.pl
このスクリプトは、現在のシステムのメモリ、スワップ、およびディスクスペースの使用状況データを
収集します。その後、収集したデータをカスタムメトリックスとしてレポートするため、Amazon
CloudWatch に対してリモートコールを実行します。
オプション
名前
説明
--mem-util
パーセンテージで表した MemoryUtilization メトリックスを収集し
送信します。このオプションでは、アプリケーションとオペレー
ティングシステムよって割り当てられたメモリのみをレポートし、
キャッシュとバッファ内のメモリは除外します。
--mem-used
メガバイトで表した MemoryUsed メトリックスを収集し送信しま
す。このオプションでは、アプリケーションとオペレーティングシ
ステムよって割り当てられたメモリのみをレポートし、キャッシュ
とバッファ内のメモリは除外します。
--mem-avail
メガバイトで表した MemoryAvailable メトリックスを収集し送信
します。このオプションでは、アプリケーションとオペレーティン
グシステムで使用可能なメモリについてレポートします。
--swap-util
パーセンテージで表した SwapUtilization メトリックスを収集し送
信します。
--swap-used
メガバイトで表した SwapUsed メトリックスを収集し送信します。
API Version 2010-08-01
191
Amazon CloudWatch 開発者ガイド
スクリプトの使用
名前
説明
--disk-path=PATH
レポートの対象とするディスクを選択します。
PATH では、レポートする必要のあるファイルシステムのマウント
ポイントか、またはマウントポイント上でのファイルの場所を指定
することができます。複数のディスクを選択する場合は、それぞれ
--disk-path=PATH を指定します。
/ および /home にマウントされたファイルシステムのディスクを
選択するには、以下のパラメータを使用します。
--disk-path=/ --disk-path=/home
--disk-space-util
選択したディスクについて、DiskSpaceUtilization メトリックを収
集し送信します。メトリックはパーセンテージでレポートされま
す。
--disk-space-used
選択したディスクについて、DiskSpaceUsed メトリックを収集し
送信します。メトリックは、デフォルトにより、ギガバイトでレ
ポートされます。
Linux オペレーティングシステムには予約ディスクスペースがある
ため、使用済みディスクスペースと使用可能なディスクスペースを
合計しても正確なディスクスペースの合計にならないことがありま
す。
--disk-space-avail
選択したディスクについて、DiskSpaceAvailable メトリックを収集
し送信します。メトリックはギガバイトでレポートされます。
Linux オペレーティングシステムには予約ディスクスペースがある
ため、使用済みディスクスペースと使用可能なディスクスペースを
合計しても正確なディスクスペースの合計にならないことがありま
す。
--memory-units=UNITS
メモリの使用状況をレポートする際の単位を指定します。指定しな
い場合は、メモリはメガバイトでレポートされます。UNITS に指
定できるのは、バイト、キロバイト、メガバイト、またはギガバイ
トです。
--disk-space-units=UNITS ディスクスペースの使用状況をレポートする際の単位を指定しま
す。指定しない場合は、ディスクスペースはギガバイトでレポート
されます。UNITS に指定できるのは、バイト、キロバイト、メガ
バイト、またはギガバイトです。
--aws-credentialfile=PATH
AWS 認証情報が格納されているファイルの場所を指定します。
このパラメータは、--aws-access-key-id および – -awssecret-key パラメータとともに使用できません。
--aws-access-key-id=VALUE AWS アクセスキー ID を指定して、発信者を特定するために指定し
ます。--aws-secret-key オプションとともに使用する必要があ
ります。このオプションを --aws-credential-file パラメータ
とともに使用しないでください。
--aws-secret-key=VALUE
AWS のシークレットアクセスキーを指定して、CloudWatch への
リクエストへの署名に使用します。--aws-access-key-id オプ
ションとともに使用する必要があります。このオプションを --awscredential-file パラメータとともに使用しないでください。
API Version 2010-08-01
192
Amazon CloudWatch 開発者ガイド
スクリプトの使用
名前
説明
--verify
メトリックスを収集するスクリプトのテストを実行し、完全なHTTP
リクエストを準備します。ただし、実際に CloudWatch コールを実
行して、データをレポートしません。また、このオプションは、認
証情報が提供されているかどうかもチェックします。このオプショ
ンを冗長モードで実行すると、CloudWatch に送信されるメトリッ
クスを出力します。
--from-cron
cron からスクリプトを呼び出す際に、このオプションを使用しま
す。このオプションを使用すると、すべての診断出力が抑制されま
すが、エラーメッセージはユーザーアカウントのローカルシステム
ログに送信されます。
--verbose
スクリプトが実行する内容についての詳細情報を表示します。
--help
使用状況情報を表示します。
--version
スクリプトのバージョン番号を表示します。
例
以下の例では、有効な AWS 認証情報を使用して awscreds.conf ファイルが更新されていることを前
提としています。awscreds.conf ファイルを使用しない場合は、--aws-access-key-id および
--aws-secret-key 引数を使用して、認証情報を提供してください。
CloudWatch にデータを投稿せずに、単純なテストを実行するには
•
次のコマンドを実行します。
./mon-put-instance-data.pl --mem-util --verify --verbose
利用可能なメモリメトリックスをすべて収集して CloudWatch に送信するには
•
次のコマンドを実行します。
./mon-put-instance-data.pl --mem-util --mem-used --mem-avail
CloudWatch にレポートするメトリックスの cron スケジュールを設定するには
1.
以下のコマンドを使用して、crontab の編集を開始します。
crontab -e
2.
以下のコマンドを追加して、メモリとディスクスペースの使用状況を 5 分ごとに CloudWatch にレ
ポートします。
*/5 * * * * ~/aws-scripts-mon/mon-put-instance-data.pl --mem-util --diskspace-util --disk-path=/ --from-cron
API Version 2010-08-01
193
Amazon CloudWatch 開発者ガイド
スクリプトの使用
スクリプトがエラーを検出すると、スクリプトはシステムログにエラーメッセージを書き込みま
す。
mon-get-instance-stats.pl
このスクリプトは CloudWatch に対してクエリを実行し、メモリ、スワップ、およびディスクスペース
のメトリックスの統計を要求します。対象期間は直近の時間数で指定します。これらのデータは、スク
リプトの実行対象である Amazon EC2 インスタンスに提供されます。
オプション
名前
説明
--recent-hours=N
レポート対象期間とする直近の時間数を N で指定します。N は整数
です。
--aws-credentialfile=PATH
AWS 認証情報が格納されているファイルの場所を指定します。
--aws-access-key-id=VALUE AWS アクセスキー ID を指定して、発信者を特定するために指定し
ます。--aws-secret-key オプションとともに使用する必要があ
ります。このオプションを --aws-credential-file オプション
とともに使用しないでください。
--aws-secret-key=VALUE
AWS のシークレットアクセスキーを指定して、CloudWatch への
リクエストへの署名に使用します。--aws-access-key-id オプ
ションとともに使用する必要があります。このオプションを --awscredential-file オプションとともに使用しないでください。
--verify
メトリックスを収集するスクリプトのテストを実行し、完全なHTTP
リクエストを準備します。ただし、実際に CloudWatch コールを実
行して、データをレポートしません。また、このオプションは、認
証情報が提供されているかどうかもチェックします。このオプショ
ンを冗長モードで実行すると、CloudWatch に送信されるメトリッ
クスを出力します。
--verbose
スクリプトが実行する内容についての詳細情報を表示します。
--help
使用状況情報を表示します。
--version
スクリプトのバージョン番号を表示します。
例
直近 12 時間の使用状況統計を取得するには
•
次のコマンドを実行します。
mon-get-instance-stats.pl --recent-hours=12
以下の出力例のような応答が返されます。
Instance metric statistics for the last 12 hours.
API Version 2010-08-01
194
Amazon CloudWatch 開発者ガイド
AWS マネジメントコンソールでのカスタムメトリックス
の表示
CPU Utilization
Average: 1.06%, Minimum: 0.00%, Maximum: 15.22%
Memory Utilization
Average: 6.84%, Minimum: 6.82%, Maximum: 6.89%
Swap Utilization
Average: N/A, Minimum: N/A, Maximum: N/A
Disk Space Utilization on /dev/xvda1 mounted as /
Average: 9.69%, Minimum: 9.69%, Maximum: 9.69%
AWS マネジメントコンソールでのカスタムメトリッ
クスの表示
mon-put-instance-data.pl スクリプトの呼び出しが正常に行われると、AWS マネジメントコン
ソールを使って Amazon CloudWatch コンソールで投入したカスタムメトリックスを表示できます。
カスタムメトリックスを表示するには
1.
前述の mon-put-instance-data.pl を実行します。
2.
AWS マネジメントコンソール にサインインした後、 https://console.aws.amazon.com/cloudwatch/
にある CloudWatch コンソールを開きます。
[View Metrics] をクリックします。
[Viewing] リストで、スクリプトによって投入されたカスタムメトリックスが System/Linux という
プレフィックス付きで表示されます。
3.
4.
Amazon CloudWatch Monitoring Scripts for
Windows
Abstract
モニタリングスクリプトを使用して Amazon EC2 Windows インスタンスのカスタムメトリックスを作成し、使用
する方法を説明します。
Amazon CloudWatch Monitoring Scripts for Windows は、Amazon CloudWatch カスタムメトリックス
を作成し利用する方法を示した PowerShell スクリプトのサンプルです。このスクリプトは、Elastic
Compute Cloud(Amazon Amazon EC2)Windows インスタンスのメモリ、ページファイル、および
ディスクスペースの使用状況メトリックスをレポートする、完全に機能する例で構成されます。
EC2Config を使用してログファイルを CloudWatch Logs に送信し、CloudWatch のログに記録された
イベントに対してカスタムのメトリックスとアラームを作成することもできます。Microsoft Windows
を実行する Amazon EC2 で CloudWatch Logs を開始する方法については、『Microsoft Windows イン
スタンスの Amazon EC2 ユーザーガイド』の「CloudWatch へのパフォーマンスカウンタの送信と
CloudWatch Logs へのログの送信」を参照してください。
Topics
• ご利用開始にあたって (p. 196)
• スクリプトの使用 (p. 197)
API Version 2010-08-01
195
Amazon CloudWatch 開発者ガイド
ご利用開始にあたって
Amazon CloudWatch Monitoring Scripts for Microsoft Windows Server は、アマゾン ウェブ サービス
(AWS)のサンプルコードライブラリからダウンロードできます。
AmazonCloudWatchMonitoringWindows.zip パッケージには、以下のファイルが含まれています。
• [mon-put-metrics-mem.ps1] – Amazon EC2 Windows インスタンスでシステムメトリックス(メモ
リ、ページファイルの使用状況)を収集し、Amazon CloudWatch に送信します。
• [mon-put-metrics-disk.ps1] – Amazon EC2 インスタンスでシステムメトリックス(ディスクスペース
の使用状況)を収集し、Amazon CloudWatch に送信します。
• [mon-put-metrics-perfmon.ps1] – Amazon EC2 インスタンスで PerfMon カウンタを収集し、Amazon
CloudWatch に送信します。
• [mon-get-instance-stats.ps1] – Amazon CloudWatch に対してクエリを実行し、このスクリプトの実
行対象である EC2 インスタンスの最新の使用状況統計を表示します。
• [awscreds.conf] – ユーザーのアクセスキー ID とシークレットアクセスキーを格納する AWS 認証情
報のファイルテンプレートです。
• [LICENSE.txt] – Apache 2.0 ライセンスが記載されたテキストファイルです。
• [NOTICE.txt] – 著作権情報です。
これらのモニタリングスクリプトは、Microsoft Windows Server を実行している Amazon EC2 インス
タンスで使用することを目的として記述されています。これらのスクリプトは、以下の Amazon マシ
ンイメージ(AMI)の 32 ビットおよび 64 ビットバージョンでテスト済みです。
• Windows Server 2008
• Windows Server 2008 R2
ご利用開始にあたって
次のステップでは、Amazon CloudWatch モニタリングスクリプトをダウンロードして解凍し、Amazon
EC2 Windows インスタンスで設定する方法を説明しています。
スクリプトをダウンロード、インストール、設定するには
1.
2.
3.
4.
Amazon EC2 Windows インスタンスに接続します。Amazon EC2 Windows インスタンスに接続す
る方法については、Linux インスタンス用 Amazon EC2 ユーザーガイド の Connecting to Windows
Instances を参照してください。
AWS SDK for .NET をダウンロードし、監視対象とする EC2 インスタンスにインストールします。
Amazon CloudWatch Monitoring Scripts for Microsoft Windows Server が格納されている .zip ファ
イルを EC2 インスタンスにダウンロードし、お好みの場所で解凍します。
以前ダウンロードした awscreds.conf ファイルを更新してください。このファイルのコンテンツ
は、以下の形式を使用する必要があります。
AWSAccessKeyId=YourAccessKeyID
AWSSecretKey=YourSecretAccessKey
Note
認証情報のファイルを既に作成済みの場合、この手順はオプションになります。既存の
ファイルを使用する場合は、スクリプトを呼び出すときにコマンドラインでそのファイル
の場所を指定します。または、環境変数 AWS_CREDENTIAL_FILE を設定して、AWS 認証
情報で該当するファイルを参照できます。
認証情報にアクセスするには、以下の手順を実行します。
API Version 2010-08-01
196
Amazon CloudWatch 開発者ガイド
スクリプトの使用
ベストプラクティスとして、ルート認証情報は使用しないでください。代わりに、Identity and
Access Management (IAM)ユーザーを、ユーザー操作を Amazon CloudWatch の操作のみに制
限するポリシーで作成する必要があります。詳細については、AWS アカウントへのユーザーアク
セスのコントロール (p. 206)を参照してください。
スクリプトの使用
mon-put-metrics-mem.ps1
このスクリプトは、現在のシステムでのメモリおよびページファイルの使用状況データを収集します。
その後、収集したデータをカスタムメトリックスとしてレポートするため、Amazon CloudWatch に対
してリモートコールを実行します。
オプション
名前
説明
-mem_util
パーセンテージで表した MemoryUtilization メトリックスを収集し
送信します。このオプションでは、アプリケーションとオペレー
ティングシステムよって割り当てられたメモリのみをレポートし、
キャッシュとバッファ内のメモリは除外します。
-mem_used
メガバイトで表した MemoryUsed メトリックスを収集し送信しま
す。このオプションでは、アプリケーションとオペレーティングシ
ステムよって割り当てられたメモリのみをレポートし、キャッシュ
とバッファ内のメモリは除外します。
-mem_avail
メガバイトで表した MemoryAvailable メトリックスを収集し送信
します。このオプションでは、アプリケーションとオペレーティン
グシステムで使用可能なメモリについてレポートします。
-page_util
パーセンテージで表した PageUtilization メトリックスを収集し送
信します。PageUtilization は、Windows インスタンスのページファ
イルごとにレポートされます。
-page_used
メガバイトで表した PageUsed メトリックスを収集し送信します。
-page_avail
すべてのディスクについて、ページファイル内で利用可能なスペー
スをレポートします。
-memory_units UNITS
メモリの使用状況をレポートする際の単位を指定します。指定しな
い場合は、メモリはメガバイトでレポートされます。UNITS に指
定できるのは、バイト、キロバイト、メガバイト、またはギガバイ
トです。
-aws_credential_file=PATH AWS 認証情報が格納されているファイルの場所を指定します。
このパラメータは、-aws_access_id および -aws_secret_key
パラメータとともには使用できません。
-aws_access_id=VALUE
AWS アクセスキー ID を指定して、発信者を特定するために使用し
ます。-aws_secret_key オプションとともに使用する必要があり
ます。このオプションを -aws_credential_file オプションと
ともに使用しないでください。
API Version 2010-08-01
197
Amazon CloudWatch 開発者ガイド
スクリプトの使用
名前
説明
-aws_secret_key=VALUE
AWS のシークレットアクセスキーを指定して、Amazon CloudWatch
へのリクエストへの署名に使用します。-aws_access-key_id オ
プションとともに使用する必要があります。このオプションを
-aws_credential_file オプションとともに使用しないでくださ
い。
-whatif
メトリックスを収集するスクリプトのテストを実行します。ただ
し、実際に Amazon CloudWatch コールを実行して、データをレ
ポートしません。また、このオプションは、認証情報が提供されて
いるかどうかもチェックします。
-from_scheduler
タスクスケジューラからスクリプトを呼び出す際に、このオプショ
ンを使用します。このオプションを使用すると、すべての診断出力
が抑制されますが、エラーメッセージはログファイルに送信されま
す。
-verbose
スクリプトが実行する内容についての詳細情報を表示します。
Get-help mon-put-metrics-mem.ps1
使用状況情報を表示します。
-version
スクリプトのバージョン番号を表示します。
-logfile
logfile はエラーメッセージをログするために使用します。これは、
「–from_scheduler」オプションとともに使用します。logfile に値
を指定しない場合、デフォルトにより、スクリプトと同じ名前に
.log 拡張子を付けたファイルが作成されます。
例
以下の例では、有効な AWS 認証情報を使用して awscreds.conf ファイルが更新されていることを前
提としています。awscreds.conf ファイルを使用しない場合は、-aws_access_id および
-aws_secret_key 引数を使用して、認証情報を提供してください。
利用可能なすべてのメモリメトリックスを、インラインアクセス ID とシークレットキーを使
用して収集し、データを CloudWatch に送信するには
•
次のコマンドを実行します。
.\mon-put-metrics-mem.ps1 -aws_access_id ThisIsMyAccessKey -aws_secret_key
ThisIsMySecretKey -mem_util -mem_avail -page_avail -page_used -page_util
-memory_units Megabytes
利用可能なすべてのメモリメトリックスを、認証情報ファイルを使用して収集し、データを
CloudWatch に送信するには
•
次のコマンドを実行します。
.\mon-put-metrics-mem.ps1 -aws_credential_file C:\awscreds.conf -mem_util
-mem_used -mem_avail -page_avail -page_used -page_util -memory_units Megabytes
API Version 2010-08-01
198
Amazon CloudWatch 開発者ガイド
スクリプトの使用
利用可能なすべてのメモリメトリックスを、環境変数に格納されている認証情報ファイルを使
用して収集し、データを CloudWatch に送信するには
•
次のコマンドを実行します。
.\mon-put-metrics-mem.ps1 -mem_util -mem_used -mem_avail -page_avail page_used -page_util -memory_units Megabytes
mon-put-metrics-disk.ps1
このスクリプトは、現在のシステムでのディスクスペースの使用状況データを収集します。その後、収
集したデータをカスタムメトリックスとしてレポートするため、Amazon CloudWatch に対してリモー
トコールを実行します。
オプション
名前
説明
-disk_space_util
選択したディスクについて、DiskSpaceUtilization メトリックを収
集し送信します。メトリックはパーセンテージでレポートされま
す。
-disk_space_used
選択したディスクについて、DiskSpaceUsed メトリックを収集し
送信します。メトリックはデフォルトでギガバイトでレポートされ
ます。
-disk_space_avail
選択したディスクについて、DiskSpaceAvailable メトリックを収集
し送信します。メトリックはギガバイトでレポートされます。
-disk_space_units UNITS
メモリの使用状況をレポートする際の単位を指定します。指定しな
い場合は、メモリはギガバイトでレポートされます。UNITS に指
定できるのは、バイト、キロバイト、メガバイト、またはギガバイ
トです。
-disk_drive
レポートの対象とするドライブ文字を選択します。c および d ドラ
イブのメトリックスをレポートするには、以下のオプションを使用
します: -disk_drive C:, D:。値はコンマで区切ります。
-aws_credential_file PATH AWS 認証情報が格納されているファイルの場所を指定します。こ
のパラメータは、–aws_access_id および -aws_secret_key パ
ラメータとともには使用できません。
-aws_access_id VALUE
AWS アクセスキー ID を指定して、発信者を特定するために使用し
ます。–aws_secret_key オプションとともに使用する必要があり
ます。このオプションを -aws_credential_file オプションと
ともに使用しないでください。
-aws_secret_key VALUE
AWS のシークレットアクセスキーを指定して、Amazon CloudWatch
へのリクエストへの署名に使用します。-aws_access_id オプショ
ンとともに使用する必要があります。このオプションを
-aws_credential_file オプションとともに使用しないでくださ
い。
API Version 2010-08-01
199
Amazon CloudWatch 開発者ガイド
スクリプトの使用
名前
説明
-whatif
メトリックスを収集するスクリプトのテストを実行します。ただ
し、実際に Amazon CloudWatch コールを実行して、データをレ
ポートしません。また、このオプションは、認証情報が提供されて
いるかどうかもチェックします。
-from_scheduler
タスクスケジューラからスクリプトを呼び出す際に、このオプショ
ンを使用します。このオプションを使用すると、すべての診断出力
が抑制されますが、エラーメッセージはログファイルに送信されま
す。
-verbose
スクリプトが実行する内容についての詳細情報を表示します。
Get-help mon-put-metrics- 使用状況情報を表示します。
disk.ps1
-version
スクリプトのバージョン番号を表示します。
-logfile
logfile はエラーメッセージをログするために使用します。これは
–from_scheduler オプションとともに使用します。logfile に値を
指定しない場合、デフォルトにより、スクリプトと同じ名前に .log
拡張子を付けたデフォルトファイルが作成されます。
例
利用可能なすべてのディスクメトリックスを、インラインアクセス ID とシークレットキーを
使用して収集し、データを Amazon CloudWatch に送信するには
•
次のコマンドを実行します。
.\mon-put-metrics-disk.ps1 -aws_access_id ThisIsMyAccessKey -aws_secret_key
ThisIsMySecretKey -disk_space_util -disk_space_avail -disk_space_units
Gigabytes
利用可能なすべてのディスクメトリックスを、認証情報ファイルを使用して収集し、データを
Amazon CloudWatch に送信するには
•
次のコマンドを実行します。
.\mon-put-metrics-disk.ps1
-aws_credential_file C:\awscreds.conf -disk_drive C:, D:
-disk_space_util -disk_space_used -disk_space_avail -disk_space_units
Gigabytes
利用可能なすべてのディスクメトリックスを、環境変数に格納されている認証情報ファイルを
使用して収集し、データを Amazon CloudWatch に送信するには
•
次のコマンドを実行します。
API Version 2010-08-01
200
Amazon CloudWatch 開発者ガイド
スクリプトの使用
.\mon-put-metrics-disk.ps1 -disk_drive C:, D:
-disk_space_util -disk_space_used -disk_space_avail disk_space_units Gigabytes
mon-put-metrics-perfmon.ps1
このスクリプトは、現在のシステムで PerfMon カウンタを収集します。その後、収集したデータをカ
スタムメトリックスとしてレポートするため、Amazon CloudWatch に対してリモートコールを実行し
ます。
オプション
名前
説明
-processor_queue
現在のプロセッサキューカウンタをレポートします。
-pages_input
メモリページ/入力メモリカウンタをレポートします。
-aws_credential_file PATH AWS 認証情報が格納されているファイルの場所を指定します。こ
のパラメータは、–aws_access_id および -aws_secret_key パ
ラメータとともには使用できません。
-aws_access_id VALUE
AWS アクセスキー ID を指定して、発信者を特定するために使用し
ます。–aws_secret_key オプションとともに使用する必要があり
ます。このオプションを -aws_credential_file オプションと
ともに使用しないでください。
-aws_secret_key VALUE
AWS のシークレットアクセスキーを指定して、Amazon CloudWatch
へのリクエストへの署名に使用します。-aws_access_id オプショ
ンとともに使用する必要があります。このオプションを
-aws_credential_file オプションとともに使用しないでくださ
い。
-whatif
メトリックスを収集するスクリプトのテストを実行します。ただ
し、実際に Amazon CloudWatch コールを実行して、データをレ
ポートしません。また、このオプションは、認証情報が提供されて
いるかどうかもチェックします。
-from_scheduler
タスクスケジューラからスクリプトを呼び出す際に、このオプショ
ンを使用します。このオプションを使用すると、すべての診断出力
が抑制されますが、エラーメッセージはログファイルに送信されま
す。
-verbose
スクリプトが実行する内容についての詳細情報を表示します。
Get-help mon-put-metrics- 使用状況情報を表示します。
disk.ps1
-version
スクリプトのバージョン番号を表示します。
-logfile
logfile はエラーメッセージをログするために使用します。これは
–from_scheduler オプションとともに使用します。logfile に値を
指定しない場合、デフォルトにより、スクリプトと同じ名前に .log
拡張子を付けたデフォルトファイルが作成されます。
API Version 2010-08-01
201
Amazon CloudWatch 開発者ガイド
スクリプトの使用
例
スクリプト内の設定済みの PerfMon カウンタを、インラインアクセス ID とシークレットキー
を使用して収集し、データを Amazon CloudWatch に送信するには
•
次のコマンドを実行します。
.\mon-put-metrics-perfmon.ps1 -aws_access_id ThisIsMyAccessKey -aws_secret_key
ThisIsMySecretKey -pages_input -processor_queue
スクリプト内の設定済みの PerfMon カウンタを、認証情報ファイルを使用して収集し、データ
を Amazon CloudWatch に送信するには
•
次のコマンドを実行します。
.\mon-put-metrics-perfmon.ps1
pages_input -processor_queue
-aws_credential_file C:\awscreds.conf -
スクリプト内の設定済みの PerfMon カウンタを、環境変数に格納されている認証情報ファイル
を使用して収集し、データを Amazon CloudWatch に送信するには
•
次のコマンドを実行します。
.\mon-put-metrics-perfmon.ps1 -pages_input -processor_queue
プッシュするカウンタを Amazon CloudWatch に追加するには
1.
スクリプトをメモ帳などのテキストエディタで開き、72 行目にある以下のコメント付きのセクショ
ンを見つけます。
### Add More counters here.
#$Counters.Add('\Memory\Cache Bytes','Bytes')
#$Counters.Add('\\localhost\physicaldisk(0 c:)\% disk time','Percent')
Note
最初のパラメータ($Counters.Add など)は PerfMon カウンタです。2 番目のパラメータ
(('\Memory\Cache Bytes','Bytes')など)は、カウンタが提供するデータの単位です。
2.
スクリプトを編集し、上記にあるように、独自の PerfMon カウンタを追加します。スクリプトに
カスタム PerfMon カウンタを追加した後は、認証情報以外のパラメータを使用しなくても、スク
リプトを実行できます。
Note
PerfMon カウンタを追加できるのは、コンピューター上のスクリプトのみです。PerfMon
カウンタをテストするには、Get-Counter コマンドを使用します。詳細については、
Microsoft TechNet ウェブサイトの Get-Counter を参照してください。
API Version 2010-08-01
202
Amazon CloudWatch 開発者ガイド
スクリプトの使用
mon-get-instance-stats.ps1
このスクリプトは Amazon CloudWatch に対してクエリを実行し、メモリ、ページファイル、および
ディスクスペースのメトリックスの統計を要求します。対象期間は直近の時間数で指定します。これら
のデータは、スクリプトの実行対象である Amazon EC2 インスタンスに提供されます。
オプション
名前
説明
-recent-hours N
レポート対象期間とする直近の時間数を N で指定します。N は整
数です。
-aws_credential_file PATH AWS 認証情報が格納されているファイルの場所を指定します。こ
のパラメータは、–aws_access_id および -aws_secret_key パ
ラメータとともには使用できません。
-aws_access_id VALUE
AWS アクセスキー ID を指定して、発信者を特定するために使用し
ます。–aws_secret_key オプションとともに使用する必要があり
ます。このオプションを -aws_credential_file オプションと
ともに使用しないでください。
-aws_secret_key VALUE
AWS のシークレットアクセスキーを指定して、Amazon CloudWatch
へのリクエストへの署名に使用します。-aws_access_id オプショ
ンとともに使用する必要があります。このオプションを
-aws_credential_file オプションとともに使用しないでくださ
い。
-verbose
スクリプトが実行する内容についての詳細情報を表示します。
Get-help mon-get-instance-stats.ps1
使用状況情報を表示します。
-version
スクリプトのバージョン番号を表示します。
例
直近の 12 時間の使用状況統計を、インラインアクセス ID とシークレットキーを使用して取得
し、データを Amazon CloudWatch に送信するには
•
次のコマンドを実行します。
.\ mon-get-instance-stats.ps1 -aws_access_id
ThisIsMyAccessKey -aws_secret_key ThisIsMySecretKey -re
cent_hours 12
直近の 12 時間の使用状況統計を、認証情報ファイルを使用して取得し、データを Amazon
CloudWatch に送信するには
•
次のコマンドを実行します。
API Version 2010-08-01
203
Amazon CloudWatch 開発者ガイド
スクリプトの使用
.\mon-get-instance-stats.ps1 -aws_credential_file C:\awscreds.conf -re
cent_hours 12
直近の 12 時間の使用状況統計を、環境変数に格納されている認証情報ファイルを使用して取
得し、データを Amazon CloudWatch に送信するには
•
次のコマンドを実行します。
.\mon-get-instance-stats.ps1 -recent_hours 12
以下の出力例のような応答が返されます。
Assembly Loaded
Instance Metrics for last 12 hours.
CPU Utilization
Average: 4.69 % Maximum: 10.47 % Minimum:
Memory Utilization
Average: 14.45 % Maximum:
14.77 % Minimum:
1.16 %
pagefileUtilization(c:\pagefile.sys)
Average: 0.00 % Maximum: 0.00 % Minimum:
14.38 %
Volume Utilization C:
Average: 17.28 % Maximum:
Volume Utilization D:
Average: 1.41 % Maximum:
17.28 % Minimum:
0.00 %
1.41 % Minimum:
pagefileUtilization(f:\pagefile.sys)
Average: 0.00 % Maximum: 0.00 % Minimum:
pagefileUtilization(f:\pagefile.sys)
Average: 0 Maximum: 0 Minimum: 0
17.28 %
1.41 %
0.00 %
pagefileUtilization(f:\pagefile.sys)
Average: 0 Maximum: 0 Minimum: 0
メトリックスレポートを Amazon CloudWatch に送信するため
のタスクスケジューラの設定
Windows タスクスケジューラを使用して、メトリックスレポートを定期的に Amazon CloudWatch に
送信することができます。
メトリックスレポートを Amazon CloudWatch に送信するためにタスクスケジューラを設定す
るには
1.
Windows Server インスタンスで [Start] をクリックし、[Administrative Tools]、[Task Scheduler] の
順にクリックします。
2.
3.
[Action] メニューの [Create Task] をクリックします。
[Create Task] ダイアログボックスの [General] タブにある [Name] ボックスにタスクの名前を入力
し、[Run whether user is logged on or not] を選択します。
API Version 2010-08-01
204
Amazon CloudWatch 開発者ガイド
スクリプトの使用
4.
5.
6.
[Triggers] タブで [New] をクリックします。
[New Trigger] ダイアログボックスの [Settings] で [One time] を選択します。
[Advanced settings] の [Repeat task every] として、ドロップダウンメニューから [5 minutes] を選
択します。
7.
[for a duration of] ドロップダウンメニューから [Indefinitely] を選択し、[OK] をクリックします。
Note
この設定により、スクリプトを永久に 5 分おきに起動するトリガが作成されます。このタ
スクを特定の日数だけ実行させるように変更するには、[Expire] チェックボックスを使用
します。
8.
9.
[Actions] タブで [New] をクリックします。
[Action] ドロップダウンメニューから [Start a program] を選択します。
10. [Settings] の [Program/script] ボックスに [Powershell.exe] と入力します。
11. [Add arguments (optional)] ボックスに「-command "C:\scripts\mon-put-metrics-disk.ps1
-disk_drive C:,d -disk_space_util -disk_space_units gigabytes -from_scheduler
-logfile C:\mylogfile.log"」と入力して、[OK] をクリックします。
12. [Create Task] ダイアログボックスで [OK] をクリックします。
ユーザーアカウントを選択してこのタスクを実行した場合、タスクスケジューラによってユーザー
認証情報を求められます。タスクを実行するアカウントのユーザー名とパスワードを入力し、[OK]
をクリックします。
Note
使用する PerfMon カウンタが管理者権限を必要としない場合は、管理者アカウントではな
く、システムアカウントを使用してこのタスクを実行できます。[Create Task] ダイアログ
ボックスの [General] タブで、[Change User or Group] をクリックし、システムアカウン
トを選択します。
API Version 2010-08-01
205
Amazon CloudWatch 開発者ガイド
AWS アカウントへのユーザーアクセ
スのコントロール
Abstract
AWS アカウントのユーザーが CloudWatch で行えるアクションを指定するため、IAM ポリシーを用いてユーザー
アクセスをコントロールします。
Amazon CloudWatch は AWS Identity and Access Management (IAM)と連携して、AWS アカウント
のユーザーが行える CloudWatch アクションを指定できるようにしています。たとえば、組織の特定の
ユーザーのみに GetMetricStatistics を使用する許可を与える IAM ポリシーを作成できます。これ
でこのユーザーは、クラウドリソースに関するデータを取り込むアクションを使用できます。
特定のリソースの CloudWatch データに対してアクセスコントロールをするために IAM を使用するこ
とはできません。たとえば、特定のインスタンス一式または特定のロードバランサーのみの CloudWatch
データに対してユーザーアクセスを許可することはできません。IAM を使用して付与する許可には、
CloudWatch で使用するすべてのクラウドリソースが含まれます。加えて、Amazon CloudWatch コマ
ンドラインツールで IAM ロールを使用することはできません。
Important
IAM で Amazon CloudWatch を使用する場合も、CloudWatch の使用方法は変わりません。
CloudWatch アクションに変更はなく、ユーザーおよびアクセスコントロールに関連する新し
い CloudWatch アクションはありません。
CloudWatch アクションを対象とするポリシーの例については、CloudWatch のポリシーの例 (p. 208) を
参照してください。
Topics
• Amazon CloudWatch ARN (p. 207)
• CloudWatch アクション (p. 207)
• CloudWatch キー (p. 208)
• CloudWatch のポリシーの例 (p. 208)
API Version 2010-08-01
206
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch ARN
Amazon CloudWatch ARN
CloudWatch には、アクセスコントロールを行う特定のリソースはありません。そのため、IAM ポリ
シーで使用する CloudWatch はありません。CloudWatch アクションに対するアクセスコントロールポ
リシーを記述する場合は、リソースとしてアスタリスク(*)を使用します。ARN の詳細については、
IAM を使用する の ARN を参照してください。
ただし、Amazon EC2 インスタンスメトリックスを使う Amazon CloudWatch アラームの作成に、
Amazon CloudWatch CLI か API のいずれかを使用している場合、または API で AWS SDK を使用して
いる場合は、そのアクション専用の Amazon リソースネーム(ARN)を用いてアクションを追加する
ことができます。アクションは任意のアラーム状態に追加でき、各アクションに対してリージョンを指
定できます。リージョンは、put-metric-alarm リクエストの送信先リージョンと一致していなければな
りません。詳細については、CLI または API を使用して、インスタンスを停止、終了または復旧するア
ラームを作成する (p. 115) を参照してください。
アクション
ARN(リージョンを伴なう)
Stop
arn:aws:automate:us-east-1:ec2:stop
Terminate
arn:aws:automate:us-east-1:ec2:terminate
CloudWatch アクション
IAM ポリシーでは、CloudWatch が提供する任意のすべてのアクションを指定することができます。ア
クション名には、小文字の文字列 cloudwatch:、ec2:、または autoscaling: をプレフィックスと
して付ける必要があります。例: cloudwatch:GetMetricStatistics、cloudwatch:ListMetrics、
または cloudwatch:*(すべての CloudWatch アクションの場合)。CloudWatch を使用して IAM ポ
リシーで指定できるアクションは以下のとおりです。
サービス
アクション
Amazon CloudWatch
cloudwatch:DeleteAlarms
Amazon CloudWatch
cloudwatch:DescribeAlarmHistory
Amazon CloudWatch
cloudwatch:DescribeAlarms
Amazon CloudWatch
cloudwatch:DescribeAlarmsForMetric
Amazon CloudWatch
cloudwatch:DisableAlarmActions
Amazon CloudWatch
cloudwatch:EnableAlarmActions
Amazon CloudWatch
cloudwatch:GetMetricStatistics
Amazon CloudWatch
cloudwatch:ListMetrics
Amazon CloudWatch
cloudwatch:PutMetricAlarm
Amazon CloudWatch
cloudwatch:PutMetricData
Amazon CloudWatch
cloudwatch:SetAlarmState
Amazon EC2
ec2:DescribeInstanceStatus
Amazon EC2
ec2:DescribeInstances
API Version 2010-08-01
207
Amazon CloudWatch 開発者ガイド
CloudWatch キー
サービス
アクション
Amazon EC2
ec2:StopInstances
Amazon EC2
ec2:TerminateInstances
Auto Scaling
autoscaling:Scaling
Auto Scaling
autoscaling:Trigger
CloudWatch キー
CloudWatch は、次のポリシーキーを実装しますが、それ以外は実装しません。ポリシーキーの詳細に
ついては、「IAM を使用する」の「Condition」を参照してください。
AWS 全体のポリシーのキー
• aws:CurrentTime—日付/時間の条件を確認する。
• aws:EpochTime—エポックまたは UNIX 時間を使用して、日付/時間の条件を確認する。
• aws:MultiFactorAuthAge— リクエストを作成する MFA 認証済みの認証情報がどれぐらい前(秒)
に発行されたのかを Multi-Factor Authentication(MFA)を使用して確認する。他のキーとは異なり、
MFA の使用がない場合、このキーは提示されません。
• aws:principaltype—現在のリクエストに対するプリンシパルのタイプ(ユーザー、アカウント、
フェデレーション ユーザーなど)を確認する。
• aws:SecureTransport—リクエストが SSL を使用して送信されたかどうかを確認する。Amazon
RDS や Amazon Route 53 など、SSL のみを使用するサービスでは、aws:SecureTransport キー
は意味がありません。
• aws:SourceArn— ソースの Amazon リソースネーム(ARN)を使用して、リクエストのソースを確
認します。(この値はいくつかのサービスでのみ利用可能です。詳細は、「Amazon Simple Queue
Service 開発者ガイド」の「Element Descriptions」の下にある「Amazon Resource Name (ARN)」
を参照してください。
• aws:SourceIp—リクエスタの IP アドレスを確認する。お客様が aws:SourceIp を使用していて
Amazon EC2 インスタンスからリクエストが来た場合、そのインスタンスのパブリック IP アドレス
が評価されます。
• aws:UserAgent—リクエストを作成したクライアントアプリケーションを確認する。
• aws:userid—リクエスタのユーザー ID を確認する。
• aws:username—リクエスタのユーザー名を確認する(可能な場合)。
Note
キー名では大文字と小文字は区別されます。
CloudWatch のポリシーの例
Amazon CloudWatch に対するユーザーアクセスコントロールポリシーの例は以下のとおりです。IAM
ポリシーステートメント内のセクションに関する詳細については、「Using IAM」の「IAM Policy
Elements Reference」を参照してください。
API Version 2010-08-01
208
Amazon CloudWatch 開発者ガイド
CloudWatch のポリシーの例
Note
将来的には、ポリシーの記述目的に基づき、以下のポリシーに論理的に内包されるような新し
いアクションが CloudWatch に追加される予定です。
Example CloudWatch データを取得するポリシー
以下は、グループは、リクエストに SSL を使用する場合のみ CloudWatch データを取得できるポリシー
の例です。
{
"Version": "2012-10-17",
"Statement":[{
"Effect":"Allow",
"Action":["cloudwatch:GetMetricStatistics","cloudwatch:ListMetrics"],
"Resource":"*",
"Condition":{
"Bool":{
"aws:SecureTransport":"true"
}
}
}
]
}
API Version 2010-08-01
209
Amazon CloudWatch 開発者ガイド
CloudWatch のポリシーの例
Example Amazon EC2 インスタンスを停止または終了するポリシー
以下は、CloudWatch アラームアクションにより Amazon EC2 インスタンスを停止または終了させる
ポリシーの例です。下の例では、GetMetricStatistics、ListMetrics、DescribeAlarms アクションはオプ
ションです。これらのアクションを含めて、インスタンスが正常に停止または終了したことを確認する
ことをお勧めします。
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"cloudwatch:PutMetricAlarm",
"cloudwatch:GetMetricStatistics",
"cloudwatch:ListMetrics",
"cloudwatch:DescribeAlarms"
],
"Sid": "00000000000000",
"Resource": [
"*"
],
"Effect": "Allow"
},
{
"Action": [
"ec2:DescribeInstanceStatus",
"ec2:DescribeInstances",
"ec2:StopInstances",
"ec2:TerminateInstances"
],
"Sid": "00000000000000",
"Resource": [
"*"
],
"Effect": "Allow"
}
]
}
IAM の詳細については、以下を参照してください。
• AWS Identity and Access Management (IAM)
• IAM 入門ガイド
• IAM を使用する
API Version 2010-08-01
210
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch の名前空間、
ディメンション、メトリックスのリ
ファレンス
Abstract
Amazon CloudWatch で使用可能な名前空間、ディメンション、メトリックスをすべて一覧表示します。
このセクションでは、CloudWatch で使用可能な名前空間、ディメンション、メトリックスのすべてを
示します。名前空間とは、メトリックスのコンテナのことです。メトリックスとは、時系列で表わした
データポイント一式で、異なるアプリケーションのメトリックスが誤って同じ統計に集約されないよ
う、相互に別々の名前空間に分離されています。加えて、各メトリックスにはディメンションという、
メトリックスを一意に識別できるようにする名前と値のペアがあります。
Topics
• AWS の名前空間 (p. 212)
• Auto Scaling のディメンションおよびメトリックス (p. 213)
• AWS Billing ディメンションとメトリックス (p. 216)
• Amazon CloudFront のディメンションおよびメトリックス (p. 217)
• Amazon CloudSearch のディメンションおよびメトリックス (p. 218)
• Amazon DynamoDB のディメンションおよびメトリックス (p. 219)
• Amazon ElastiCache のディメンションおよびメトリックス (p. 227)
• Amazon EBS のディメンションおよびメトリックス (p. 232)
• Amazon Elastic Compute Cloud のディメンションおよびメトリックス (p. 234)
• Elastic Load Balancing のディメンションおよびメトリックス (p. 238)
• Amazon Elastic MapReduce のディメンションおよびメトリックス (p. 241)
• Amazon Kinesis のディメンションおよびメトリックス (p. 245)
• Amazon Machine Learning のディメンションおよびメトリックス (p. 247)
• AWS OpsWorks のディメンションおよびメトリックス (p. 248)
• Amazon Redshift のディメンションおよびメトリックス (p. 250)
• Amazon RDS のディメンションおよびメトリックス (p. 253)
• Amazon Route 53 のディメンションおよびメトリックス (p. 256)
API Version 2010-08-01
211
Amazon CloudWatch 開発者ガイド
AWS の名前空間
• Amazon Simple Notification Service のディメンションおよびメトリックス (p. 256)
• Amazon SQS のディメンションおよびメトリックス (p. 258)
• Amazon SWF のディメンションおよびメトリックス (p. 259)
• AWS Storage Gateway のディメンションおよびメトリックス (p. 261)
• Amazon WorkSpaces のディメンションおよびメトリックス (p. 266)
AWS の名前空間
Abstract
Amazon CloudWatch で使用可能な名前空間(メトリックスのコンテナ)をすべて一覧表示します。
CloudWatch 名前空間は、メトリックスのコンテナです。異なる名前空間のメトリックスは相互に切り
離されて、異なるアプリケーションのメトリックスが誤って同じ統計に集約されないようになっていま
す。Amazon CloudWatch のデータを提供するすべての AWS サービスでは、「AWS/」で始まる名前空
間の文字列を使用します。カスタムメトリックスを作成した場合、カスタムメトリックスのコンテナと
して名前空間も指定する必要があります。以下のサービスは、CloudWatch にメトリックスのデータポ
イントをプッシュします。
AWS の製品
名前空間
Auto Scaling
AWS/AutoScaling
AWS の請求
AWS/Billing
Amazon CloudFront
AWS/CloudFront
Amazon CloudSearch
AWS/CloudSearch
Amazon DynamoDB
AWS/DynamoDB
Amazon ElastiCache
AWS/ElastiCache
Amazon Elastic Block Store
AWS/EBS
Amazon Elastic Compute Cloud
AWS/EC2
Elastic Load Balancing
AWS/ELB
Amazon Elastic MapReduce
AWS/ElasticMapReduce
Amazon Kinesis
AWS/Kinesis
Amazon Machine Learning
AWS/ML
AWS OpsWorks
AWS/OpsWorks
Amazon Redshift
AWS/Redshift
Amazon Relational Database Service
AWS/RDS
Amazon Route 53
AWS/Route53
Amazon Simple Notification Service
AWS/SNS
Amazon Simple Queue Service
AWS/SQS
Amazon Simple Workflow Service
AWS/SWF
API Version 2010-08-01
212
Amazon CloudWatch 開発者ガイド
Auto Scaling のディメンションおよびメトリックス
AWS の製品
名前空間
AWS Storage Gateway
AWS/StorageGateway
Amazon WorkSpaces
AWS/WorkSpaces
Auto Scaling のディメンションおよびメトリック
ス
Abstract
Amazon CloudWatch で使用可能な Auto Scaling のディメンションおよびメトリックスをすべて一覧表示します。
このセクションでは、Auto Scaling インスタンスおよびグループが CloudWatch に送信するメトリック
スについて説明するとともに、詳細モニタリング(1 分)と基本モニタリング(5 分)を有効化する方
法について解説します。Auto Scaling をモニタリングする方法については、「Auto Scaling 開発者ガイ
ド」の「Monitor Your Auto Scaling Instances」を参照してください。
Topics
• Auto Scaling インスタンスのサポート (p. 213)
• Auto Scaling グループのサポート (p. 215)
Auto Scaling インスタンスのサポート
このセクションでは、Auto Scaling インスタンスが CloudWatch に送信するメトリックスについて説明
します。インスタンスメトリックスとは、個々の Amazon EC2 インスタンスが CloudWatch に送信す
るインスタンスです。インスタンスメトリックスは、Auto Scaling グループにあるかどうかに関係な
く、任意の Amazon EC2 インスタンスで利用可能な同じメトリックスです。Amazon EC2 インスタン
スのインスタンスメトリックスについては Amazon Elastic Compute Cloud のディメンションおよびメ
トリックス (p. 234) を参照してください。
CloudWatch では、基本モニタリングまたは詳細モニタリングを提供しています。基本モニタリングで
は、5 分ごとに CloudWatch に各インスタンスの集約データを送信します。詳細モニタリングでは、1
分ごとに各インスタンスのデータを送信することで、より頻繁に集約データを提供します。
Note
詳細モニタリングの選択は、Auto Scaling グループのメトリックスを収集する前提条件となっ
ています。詳細については、the section called “Auto Scaling グループのサポート” (p. 215) を参
照してください。
次のセクションでは、詳細モニタリングまたは基本モニタリングのいずれかを有効化する方法について
説明します。
Auto Scaling の詳細インスタンスモニタリングのアクティベー
ション
新しい Auto Scaling グループの詳細インスタンスモニタリングを有効化するための追加の手順は必要
ありません。Auto Scaling グループを作成する最初の手順の 1 つは起動設定を作成することです。各起
動設定には、InstanceMonitoring.Enabled というフラグが含まれています。フラグのデフォルト
値は true であるため、詳細モニタリングを行う場合はこのフラグを設定する必要はありません。
API Version 2010-08-01
213
Amazon CloudWatch 開発者ガイド
Auto Scaling インスタンスのサポート
基本モニタリングを明示的に選択した Auto Scaling グループがある場合(特に自動的にグループをス
ケーリングする CloudWatch アラームを設定してある場合)、詳細モニタリングへの切り換える際にい
くつかの手順を実行する必要があります。
既存の Auto Scaling グループを詳細インスタンスモニタリングに切り換えるには
1.
InstanceMonitoring.Enabled フラグを有効にして起動設定を作成します。コマンドラインツー
ルを使う場合は、起動設定を --monitoring-enabled オプションで作成します。
2.
UpdateAutoScalingGroup を呼び出して Auto Scaling グループを前の手順で作成した起動設定
で更新します。Auto Scaling は、作成した新しいインスタンスの詳細モニタリングを有効にしま
す。
3.
以下のアクションのいずれかを選択して、Auto Scaling グループにある既存のすべての Amazon
EC2 インスタンスを処理します。
4.
目的
操作
既存のインスタンスを保存
する
Amazon EC2 API から MonitorInstances を呼び出し、既存の各
インスタンスの詳細モニタリングを有効にします。
既存のインスタンスを終了
する
既存の各インスタンスに対して、Auto Scaling API から TerminateInstanceInAutoScalingGroup を呼び出します。Auto Scaling
は、更新された起動設定を使用して、詳細モニタリングが有効の交
換インスタンスを作成します。
CloudWatch アラームと Auto Scaling グループを関連付けている場合、CloudWatch API から
PutMetricAlarm を呼び出して、アラームの期間の値が 60 秒に設定されるよう各アラームを更
新します。
Auto Scaling の基本インスタンスモニタリングのアクティベー
ション
詳細モニタリングではなく基本モニタリングで Auto Scaling グループを新規作成するには、新しい Auto
Scaling グループと InstanceMonitoring.Enabled フラグが false に設定された起動設定を関連付
けます。コマンドラインツールを使う場合は、起動設定を --monitoring-disabled オプションで作
成します。
既存の Auto Scaling グループを基本インスタンスモニタリングに切り換えるには
1.
InstanceMonitoring.Enabled フラグを無効にして起動設定を作成します。コマンドラインツー
ルを使う場合は、起動設定を --monitoring-disabled オプションで作成します。
2.
既に EnableMetricsCollection を呼び出すことでグループメトリックスを有効化している場
合、Auto Scaling グループで DisableMetricsCollection を呼び出して、全グループメトリッ
クスの収集を無効にします。詳細については、the section called “Auto Scaling グループのサポー
ト” (p. 215) を参照してください。
3.
UpdateAutoScalingGroup を呼び出して Auto Scaling グループを前の手順で作成した起動設定
で更新します。Auto Scaling は、作成した新しいインスタンスで詳細モニタリングを無効にしま
す。
4.
以下のアクションのいずれかを選択して、Auto Scaling グループにある既存のすべての Amazon
EC2 インスタンスを処理します。
API Version 2010-08-01
214
Amazon CloudWatch 開発者ガイド
Auto Scaling グループのサポート
5.
目的
操作
既存のインスタンスを保存
する
Amazon EC2 API から UnmonitorInstances を呼び出し、既存の
各インスタンスの 詳細モニタリングを無効にします。
既存のインスタンスを終了
する
既存の各インスタンスに対して、Auto Scaling API から TerminateInstanceInAutoScalingGroup を呼び出します。Auto Scaling
は、更新された起動設定を使用して、詳細モニタリングが無効の交
換インスタンスを作成します。
CloudWatch アラームと Auto Scaling グループを関連付けている場合、CloudWatch API から
PutMetricAlarm を呼び出して、アラームの期間の値が 300 秒に設定されるよう各アラームを更
新します。
Important
5 分の集約データにマッチするようにアラームを更新しないと、アラームは毎分に統計を
確認し続けますが、5 期間のうち 4 期間で利用可能なデータが検出されない可能性があり
ます。
Amazon EC2 インスタンスのインスタンスメトリックスについては、the section called “Amazon Elastic
Compute Cloud のディメンションおよびメトリックス” (p. 234) を参照してください。
Auto Scaling グループのサポート
グループメトリックスとは、Auto Scaling グループが CloudWatch に送信するメトリックスのことであ
り、いずれかのインスタンスではなくグループとして表されます。グループメトリックスを有効にする
と、Auto Scaling は毎分 CloudWatch に集約データを送信します。グループメトリックスを無効にする
と、Auto Scaling は CloudWatch にグループメトリックスのデータを一切送信しません。
グループメトリックスを有効にするには
1.
2.
Auto Scaling グループの起動設定で InstanceMonitoring.Enabled フラグを設定することで、
Auto Scaling グループの詳細インスタンスモニタリングを有効にします。詳細については、Auto
Scaling Instance Support (p. 213) を参照してください。
Auto Scaling のクエリ API の一部である EnableMetricsCollection を呼び出します。もしく
は、Auto Scaling のコマンドラインツールにある同等の as-enable-metrics-collection コマ
ンドを使用することもできます。
Auto Scaling グループメトリックスの表
以下の各メトリックスは、個別に有効または無効にできます。
メトリックス
説明
GroupMinSize
Auto Scaling グループの最小サイズ。
GroupMaxSize
Auto Scaling グループの最大サイズ。
GroupDesiredCapacity
Auto Scaling グループが保持しようとするインスタンスの数。
API Version 2010-08-01
215
Amazon CloudWatch 開発者ガイド
AWS Billing ディメンションとメトリックス
メトリックス
説明
GroupInServiceInstances
Auto Scaling グループの一部として実行するインスタンスの数。こ
のメトリックスには保留中もしくは終了処理中のインスタンスは含
まれません。
GroupPendingInstances
保留中のインスタンスの数。保留中のインスタンスは、稼働状態で
はありません。このメトリックスには稼働中もしくは終了処理中の
インスタンスは含まれません。
GroupStandbyInstances
Standby 状態にあるインスタンスの数。この状態のインスタンス
はまだ実行中ですが、実際には使用されていません。このメトリッ
クスはデフォルトでは含まれていません。個別にリクエストする必
要があります。
GroupTerminatingInstances 終了処理中のインスタンスの数。このメトリックスには稼働中もし
くは保留中のインスタンスは含まれません。
GroupTotalInstances
Auto Scaling グループに含まれるインスタンスの合計数。このメト
リックスは稼働中、保留中、および終了処理中のインスタンスの数
を特定します。
Auto Scaling グループメトリックスのディメンション
Auto Scaling が CloudWatch に送信するディメンションは、Auto Scaling グループの名前のみです。つ
まり、利用可能なすべての統計は Auto Scaling グループ名でフィルタリングできます。
AWS Billing ディメンションとメトリックス
AWS Billing メトリックス
メトリックス
説明
EstimatedCharges
AWS 使用量に対する予想請求額。1 つのサービスに対
する予想請求額の場合、またはすべてのサービスに対す
る予想請求額のまとめの場合があります。
AWS Billing メトリックスのディメンション
AWS Billing は ServiceName と LinkedAccount ディメンションを CloudWatch に送信します。
ディメンション
説明
ServiceName
AWS サービス名。すべてのサービスに対する予想請求
額の場合、このディメンションは省略されます。
LinkedAccount
関連付けられているアカウント番号。これは、一括請求
でのみ使用されます。このディメンションは、一括請求
関係の個別の支払いアカウントに関連付けられたアカウ
ントの場合にのみ含まれます。一括請求の支払いアカウ
ントに関連付けられていないアカウントには含まれませ
ん。
API Version 2010-08-01
216
Amazon CloudWatch 開発者ガイド
Amazon CloudFront のディメンションおよびメトリックス
ディメンション
説明
Currency
アカウントへの請求に使用する通貨。このディメンショ
ンは必須です。
単位: USD
Amazon CloudFront のディメンションおよびメト
リックス
ウェブディストリビューションのため CloudFront から CloudWatch に送信されるメトリックスとディ
メンションを次に示します。(メトリックスとディメンションは、RTMP ディストリビューションでは
使用できません。)CloudFront をモニタリングする方法については、『Amazon CloudFront 開発者ガ
イド』の「CloudWatch を使用した CloudFront アクティビティのモニタリング」を参照してください。
Note
CloudFront のメトリックスは、米国東部(バージニア北部)のリージョンでのみ使用できま
す。
Amazon CloudFront メトリックス
Note
各メトリックスに適用できる統計は 1 つ(Average または Sum)のみですが、コンソール、
API、AWS Command Line Interface では、すべての統計を利用できます。次の表に、各メト
リックスに適用可能な有効な統計を示します。
メトリックス
説明
Requests
すべての HTTP メソッドと HTTP および HTTPS リクエ
ストの両方のリクエストの数。
有効な統計: Sum
単位: Count
BytesDownloaded
GET、HEAD、および OPTIONS リクエストで閲覧者がダ
ウンロードしたバイト数。
有効な統計: Sum
単位: バイト
BytesUploaded
POST および PUT リクエストを使用して CloudFront で
オリジンにアップロードされたバイト数。
有効な統計: Sum
単位: バイト
API Version 2010-08-01
217
Amazon CloudWatch 開発者ガイド
CloudFront メトリックスのディメンション
メトリックス
説明
TotalErrorRate
HTTP ステータスコードが 4xx または 5xx であるすべ
てのリクエストの割合。
有効な統計: Average
単位: パーセント
4xxErrorRate
HTTP ステータスコードが 4xx であるすべてのリクエ
ストの割合。
有効な統計: Average
単位: パーセント
5xxErrorRate
HTTP ステータスコードが 5xx であるすべてのリクエ
ストの割合。
有効な統計: Average
単位: パーセント
CloudFront メトリックスのディメンション
CloudFront メトリックスは CloudFront 名前空間を使用して、2 つのディメンションのメトリックスを
提供します。
ディメンション
説明
DistributionId
メトリックスを表示するディストリビューションの
CloudFront ID。
Region
メトリックスを表示するリージョン。この値は、Global
である必要があります。
Amazon CloudSearch のディメンションおよびメ
トリックス
Abstract
Amazon CloudWatch で利用可能な Amazon CloudSearch のディメンションおよびメトリックスをすべて一覧表示
します。
Amazon CloudSearch が Amazon CloudWatch に送信するメトリックスおよびディメンションは次のと
おりです。Amazon CloudSearch を監視する方法の詳細については、『Amazon CloudSearch 開発者ガ
イド』の「Amazon CloudWatch を使用した Amazon CloudSearch ドメインの監視」を参照してくださ
い。
Amazon CloudSearch メトリックス
Amazon CloudSearch は、以下のメトリックスを Amazon CloudWatch に送信します。
API Version 2010-08-01
218
Amazon CloudWatch 開発者ガイド
Amazon CloudSearch メトリックスのディメンション
メトリックス
説明
SuccessfulRequests 検索インスタンスによって正常に処理された検索リクエストの数。
単位: Count
有効な統計: Maximum, 合計
SearchableDocuments
ドメインの検索インデックス内で検索可能なドキュメント数。
単位: Count
有効な統計: Maximum
IndexUtilization
使用された検索インスタンスのインデックス容量の割合。最大値は、使用
されたドメインのインデックス容量の割合を示します。
単位: パーセント
有効な統計: Average、Maximum
Partitions
インデックスが分散されているパーティションの数。
単位: Count
有効な統計: Minimum, Maximum
Amazon CloudSearch メトリックスのディメンショ
ン
Amazon CloudSearch が CloudWatch に送信するディメンションは、検索ドメインの名前だけです。つ
まり、利用可能なすべての統計はドメイン名でフィルタリングされます。
Amazon DynamoDB のディメンションおよびメト
リックス
Abstract
Amazon CloudWatch で利用可能な Amazon DynamoDB のディメンションおよびメトリックスをすべて一覧表示し
ます。
Amazon DynamoDB が Amazon CloudWatch に送信するメトリックスおよびディメンションは次のと
おりです。Amazon DynamoDB をモニタリングする方法については、「Amazon DynamoDB 開発者ガ
イド」の「Monitoring DynamoDB Tables with Amazon CloudWatch」を参照してください。
DynamoDB メトリックス
次のメトリックスは DynamoDB から入手できます。DynamoDB は、ゼロ以外の値を持つメトリックス
のみを CloudWatch に送信します。例えば、リクエストが HTTP 400 エラーコードを生成すると、
UserErrors メトリックスが増加します。一定の期間内にリクエストが 400コードを生成しない場合
は、UserErrors のメトリックスは表示されません。
API Version 2010-08-01
219
Amazon CloudWatch 開発者ガイド
DynamoDB メトリックス
Note
Average や Sum など、すべての統計が必ずしも常にすべてのメトリックスに適用可能である
とは限りません。ただし、すべての値はサービスのコンソール、API、コマンドラインクライ
アント使って適用可能です。次の表は、各メトリックスに適用可能な有効な統計のリストを示
します。
メトリックス
説明
ConditionalCheckFailedRequests 条件付き書き込みに失敗した回数。PutItem、UpdateItem、および DeleteItem オペレーションは、オペ
レーションの実行前に true と評価される必要のある理論条
件の提供を可能にします。この条件が false と評価された場
合、ConditionalCheckFailedRequests は 1 ずつ増加し
ます。
Note
条件付き書き込みが失敗すると、HTTP 400 エラー
(Bad Request) が発生します。これらのイベントは、
ConditionalCheckFailedRequests メトリック
スに反映されますが、UserErrors メトリックスに
は反映されません。
単位: Count
ディメンション: TableName
有効な統計: Minimum、Maximum、Average、Data
Samples、Sum
API Version 2010-08-01
220
Amazon CloudWatch 開発者ガイド
DynamoDB メトリックス
メトリックス
説明
ConsumedReadCapacityUnits
指定の期間内に消費された読み取り容量ユニットの数。これ
により、どれだけのプロビジョンドスループットが使用され
たかをトラックすることができます。テーブル、すべてのグ
ローバルセカンダリインデックス、または特定のグローバル
セカンダリインデックスで消費された読み取り容量の合計を
取得できます。詳細については、Provisioned Throughput in
Amazon DynamoDB を参照してください。
Note
Sum の値を使用して、使用したスループットを算
出します。たとえば、5 分間の Sum の値を取得し
ます。5 分の秒数(300)で Sum の値を割り、1 秒
あたりの ConsumedReadCapacityUnits の平均を算
出します。(この平均を算出した期間に、読み取り
のアクティビティの急上昇が際立って発生していな
いことに注意します。)その算出した値を DynamoDB に指定したプロビジョンドスループットの
値と比較できます。
単位: Count
ディメンション: TableName, GlobalSecondaryIndexName
有効な統計: Minimum、Maximum、Average、Sum
ConsumedWriteCapacityUnits
指定の期間内に消費された書き込み容量ユニットの数。これ
により、どれだけのプロビジョンドスループットが使用され
たかをトラックすることができます。テーブル、すべてのグ
ローバルセカンダリインデックス、または特定のグローバル
セカンダリインデックスで消費された書き込み容量の合計を
取得できます。詳細については、Provisioned Throughput in
Amazon DynamoDB を参照してください。
Note
Sum の値を使用して、使用したスループットを算
出します。たとえば、5 分間の Sum の値を取得し
ます。5 分の秒数(300)で Sum の値を割り、1 秒
あたりの ConsumedWriteCapacityUnits の平均を算
出します。(この平均を算出した期間に、書き込み
のアクティビティの急上昇が際立って発生していな
いことに注意します。)その算出した値を DynamoDB に指定したプロビジョンドスループットの
値と比較できます。
単位: Count
ディメンション: TableName, GlobalSecondaryIndexName
有効な統計: Minimum、Maximum、Average、Sum
API Version 2010-08-01
221
Amazon CloudWatch 開発者ガイド
DynamoDB メトリックス
メトリックス
説明
OnlineIndexConsumedWriteCapacity
新しいグローバルセカンダリインデックスがテーブルに追加
される際に消費された書き込み容量ユニットの数。インデッ
クスの書き込み容量が小さすぎる場合は、バックフィル
フェーズ中の受信書き込みアクティビティは調整される可能
性があり、これによりインデックスの作成にかかる時間が長
くなる場合があります。インデックスの書き込み容量がプロ
ビジョニング不足かどうかを判断するには、インデックスの
構築中に、この統計を監視する必要があります。
インデックスの構築中であっても、UpdateTable 操作を使
用して、インデックスの書き込み容量を調整することができ
ます。
インデックスの作成中に消費された書き込みスループット
は、インデックスの ConsumedWriteCapacityUnits メト
リックスに含まれません。
単位: Count
ディメンション: TableName, GlobalSecondaryIndexName
有効な統計: Minimum、Maximum、Average、Sum
OnlineIndexPercentageProgress
新しいグローバルセカンダリインデックスがテーブルに追加
される際の完了率。DynamoDB は、まず新しいインデック
スのリソースを割り当て、次にテーブルからインデックスに
属性をバックフィルする必要があります。大きなテーブルの
場合、このプロセスに長時間かかる場合があります。DynamoDB によるインデックスの構築時に相対的な進捗状況
を確認するには、この統計を監視する必要があります。
単位: Count
ディメンション: TableName, GlobalSecondaryIndexName
有効な統計: Minimum、Maximum、Average、Sum
API Version 2010-08-01
222
Amazon CloudWatch 開発者ガイド
DynamoDB メトリックス
メトリックス
説明
OnlineIndexThrottleEvents
新しいグローバルセカンダリインデックスがテーブルに追加
される際に発生した書き込み調整イベントの数。これらのイ
ベントの発生は、インデックス作成の完了に長い時間がかか
ることを示しています。受信書き込みアクティビティが、イ
ンデックスに対してプロビジョニングされた書き込みスルー
プットを超えているためです。
インデックスの構築中であっても、UpdateTable 操作を使
用して、インデックスの書き込み容量を調整することができ
ます。
インデックスの作成中に発生した調整イベントは、インデッ
クスの WriteThrotttleEvents メトリックスに含まれま
せん。
単位: Count
ディメンション: TableName, GlobalSecondaryIndexName
有効な統計: Minimum、Maximum、Average、Sum
ProvisionedReadCapacityUnits
テーブルまたはグローバルセカンダリインデックスのプロビ
ジョニングされた読み取り容量ユニットの数。
TableName ディメンションは、任意のグローバルセカンダ
リインデックスではなく、テーブルの ProvisionedReadCapacityUnits を返します。グローバルセカンダリイン
デックスの ProvisionedReadCapacityUnits を表示する
には、TableName と GlobalSecondaryIndex の両方を指
定する必要があります。
単位: Count
ディメンション: TableName, GlobalSecondaryIndexName
有効な統計: Minimum、Maximum、Average、Sum
ProvisionedWriteCapacityUnits
テーブルまたはグローバルセカンダリインデックスのプロビ
ジョニングされた書き込み容量ユニットの数。
TableName ディメンションは、任意のグローバルセカンダ
リインデックスではなく、テーブルの ProvisionedWriteCapacityUnits を返します。グローバルセカンダリイン
デックスの ProvisionedWriteCapacityUnits を表示す
るには、TableName と GlobalSecondaryIndex の両方を
指定する必要があります。
単位: Count
ディメンション: TableName, GlobalSecondaryIndexName
有効な統計: Minimum、Maximum、Average、Sum
API Version 2010-08-01
223
Amazon CloudWatch 開発者ガイド
DynamoDB メトリックス
メトリックス
説明
ReadThrottleEvents
指定の期間内に、事前に設定されたプロビジョンドスルー
プットの制限を超過した読み取りイベントの数。
1 つの API リクエストで複数のイベントが発生する場合があ
ります。例えば、10 個の項目を読み取る BatchGetItem
は、10 個の GetItem イベントとして処理されます。イベ
ントが抑制されると、そのイベントの ReadThrottleEvents
は 1 ずつ増加します。10 個すべての GetItemイベントが抑
制された場合を除き、BatchGetItem 全体の ThrottledRequests メトリックスは増加しません。
TableName ディメンションは、任意のグローバルセカンダ
リインデックスではなく、テーブルの ReadThrottleEvents
を返します。グローバルセカンダリインデックスの ReadThrottleEvents を表示するには、TableName と GlobalSecondaryIndex の両方を指定する必要があります。
単位: Count
ディメンション: TableName, GlobalSecondaryIndexName
有効な統計: Sum、Data Samples
ReturnedItemCount
スキャンまたはクエリ操作で返された項目の数。
単位: Count
ディメンション: TableName
有効な統計: Minimum、Maximum、Average、Data
Samples、Sum
SuccessfulRequestLatency
指定した期間で成功したリクエストの数。デフォルトでは、
SuccessfulRequestLatency は正常なコールの経過時間
を提供します。Minimum、Maximum、Average、および超
過時間の統計を見ることができます。
Note
CloudWatch は Data Samples 統計も提供します。
これは、サンプルの期間内での正常なコールの総数
です。
単位: Milliseconds(Data Samples の場合は count)
ディメンション: TableName, Operation
有効な統計: Minimum、Maximum、Average、Data Samples
API Version 2010-08-01
224
Amazon CloudWatch 開発者ガイド
DynamoDB メトリックス
メトリックス
説明
SystemErrors
指定の期間内に(おそらくサーバーエラーを示す)500 ス
テータスコードのレスポンスを生成するリクエストの数。
単位: Count
ディメンション: すべてのディメンション
有効な統計: Sum、Data Samples
ThrottledRequests
指定の期間内に、事前に設定されたプロビジョンドスルー
プットの制限を超過したユーザーリクエストの数。
リクエスト内で任意のイベントがプロビジョンドスループッ
トの制限を超過した場合、ThrottledRequests は 1 ずつ
増加します。例えば、グローバルセカンダリインデックスを
持つテーブルの項目を更新する場合、テーブルへの書き込み
と、各インデックスへの書き込みという複数のイベントが発
生します。1 つ以上のイベントが抑制されると、ThrottledRequests が 1 ずつ増加します。
Important
バッチリクエストでは、バッチ内のすべてのリクエ
スト(BatchGetItem など)がスロットリングされ
ている場合にのみ ThrottledRequests が増加し
ます。バッチ内のスロットリングされた個別のリク
エストは、結果として ReadThrottleEvents を増
加させるか(GetItem イベントの場合)、
WriteThrottleEvents を増加させます(PutItem
イベントおよび DeleteItem イベントの場合)。
どのイベントがリクエストを抑制しているかを確認するに
は、ThrottledRequests と、そのテーブルとインデック
スの ReadThrottleEvents と WriteThrottleEvents を
比較してください。
Note
抑制されたリクエストは、HTTP 400 エラー (Bad
Request) となります。これらのイベントは、
ThrottledRequests メトリックスに反映されます
が、UserErrors メトリックスには反映されませ
ん。
単位: Count
ディメンション: TableName, Operation
有効な統計: Sum、Data Samples
API Version 2010-08-01
225
Amazon CloudWatch 開発者ガイド
DynamoDB メトリックスのディメンション
メトリックス
説明
UserErrors
指定の期間内に(おそらくクライアントエラーを示す)HTTP
400 ステータスコードのレスポンスを生成するリクエストの
数。このようなイベントは、以下を除き、このメトリックス
にすべて反映されます。
• ProvisionedThroughputExceededException — このセク
ションの ThrottledRequests メトリックスを参照して
ください。
• ConditionalCheckFailedException — このセクションの
ConditionalCheckFailedRequests メトリックスを参
照してください。
単位: Count
これはリージョンアカウントレベルのメトリックスです。こ
れは、この AWS アカウントにこのリージョンのすべての
テーブルの DynamoDB リクエストに対する HTTP 400 エ
ラーの集計を表します。
有効な統計: Sum、Data Samples
WriteThrottleEvents
指定の期間内に、事前に設定されたプロビジョンドスルー
プットの制限を超過した書き込みイベントの数。
1 つの API リクエストで複数のイベントが発生する場合があ
ります。例えば、3 つの任意のグローバルセカンダリイン
デックスを持つテーブルの PutItem リクエストから、テー
ブルへの書き込みと、3 つのインデックスへの書き込みとい
う 4 つのイベントが発生します。イベントが抑制されると、
そのイベントの WriteThrottleEvents メトリックスは 1
ずつ増加します。いずれかのイベントが抑制された場合は、
ThrottledRequests も 1 ずつ増加します。
TableName ディメンションは、任意のグローバルセカンダ
リインデックスではなく、テーブルの
WriteThrottleEvents を返します。グローバルセカンダ
リインデックスの WriteThrottleEvents を表示するに
は、TableName と GlobalSecondaryIndex の両方を指定
する必要があります。
単位: Count
ディメンション: TableName, GlobalSecondaryIndexName
有効な統計: Sum、Data Samples
DynamoDB メトリックスのディメンション
DynamoDB のメトリックスは、アカウント、グローバルセカンダリインデックス名、操作などの値で
修飾されます。CloudWatch コンソールを使用して、DynamoDB データ、および下表に示すいずれかの
ディメンションを取得できます。
API Version 2010-08-01
226
Amazon CloudWatch 開発者ガイド
Amazon ElastiCache のディメンションおよびメトリック
ス
ディメンション
説明
TableName
このディメンションは、リクエストするデータを特定のテーブルに
制限します。この値には、現在のアカウントの任意のテーブル名を
設定できます。
GlobalSecondaryIndexName このディメンションは、テーブルでグローバルセカンダリインデッ
クスにリクエストするデータを制限します。GlobalSecondaryIndexName を指定する場合は、TableName も指定する必要がありま
す。
Operation
操作は DynamoDB サービス API に対応し、次のいずれかになりま
す。
• PutItem
• DeleteItem
• UpdateItem
• GetItem
• BatchGetItem
• Scan
• Query
現在の DynamoDB サービス API での操作については Operations in
Amazon DynamoDB を参照してください。
Amazon ElastiCache のディメンションおよびメト
リックス
Abstract
Amazon CloudWatch で利用可能な Amazon ElastiCache のディメンションおよびメトリックスをすべて一覧表示
します。
Amazon ElastiCache が Amazon CloudWatch に送信するメトリックスおよびディメンションは次のと
おりです。Amazon ElastiCache をモニタリングする方法については、「Amazon ElastiCache ユーザー
ガイド」の「Viewing Cache Cluster and Cache Node Metrics」を参照してください。
Topics
• ElastiCache メトリックスのディメンション (p. 227)
• ホストレベルのメトリックス (p. 228)
• Memcached のメトリックス (p. 228)
• Redis のメトリックス (p. 230)
ElastiCache メトリックスのディメンション
ElastiCache メトリックスはすべて "AWS/ElastiCache" 名前空間を使用し、1 つのディメンション
CacheNodeId にメトリックスを提供します。これは、キャッシュクラスターで各キャッシュのノード
に自動的に生成される識別子です。DescribeCacheClustersAPI または
elasticache-describe-cache-clusters コマンドラインユーティリティを使用すると、キャッシュノード
に対するこれらの値を確認することができます。
API Version 2010-08-01
227
Amazon CloudWatch 開発者ガイド
ホストレベルのメトリックス
メトリックスはそれぞれ 1 組のディメンションの下でパブリッシュされます。メトリックスを取得する
ときは、CacheClusterId と CacheNodeId の両方のディメンションを指定する必要があります。
以下も参照してください。
• ホストレベルのメトリックス (p. 228)
• Memcached のメトリックス (p. 228)
• Redis のメトリックス (p. 230)
ホストレベルのメトリックス
次の表は、ElastiCache が各キャッシュノードに対して提供するホストレベルのメトリックスを示しま
す。
以下も参照してください。
• Memcached のメトリックス (p. 228)
• Redis のメトリックス (p. 230)
メトリックス
説明
単位
CPUUtilization
CPU 使用率。
Percent
SwapUsage
ホストで使用されるスワップの量.
Bytes
FreeableMemory
ホストで使用可能な空きメモリの量.
Bytes
NetworkBytesIn
ホストがネットワークから読み取ったバイト数。 Bytes
NetworkBytesOut
ホストがネットワークから書き込んだバイト数.
Bytes
Memcached のメトリックス
次の表は、ElastiCache によって提供され、Memcached stats コマンドから算出されるメトリックスを
示します。各メトリックスは、キャッシュノードレベルで算出されます。
Memcached stats コマンドの詳細については、https://github.com/memcached/memcached/blob/master/
doc/protocol.txt にアクセスしてください。
以下も参照してください。
• ホストレベルのメトリックス (p. 228)
メトリックス
説明
単位
BytesUsedForCacheItems
キャッシュ項目の格納に使用したバイト数。
Bytes
BytesReadIntoMemcached
キャッシュノードによってネットワークから読み Bytes
取られたバイト数。
BytesWrittenOutFromMemcached
キャッシュノードによってネットワークに書き込 Bytes
まれたバイト数。
API Version 2010-08-01
228
Amazon CloudWatch 開発者ガイド
Memcached のメトリックス
メトリックス
説明
CasBadval
キャッシュが受信したが、その Cas (チェックと Count
設定)値と格納されている Cas 値が一致しない
CAS リクエストの数。
CasHits
キャッシュが受信し、リクエストされたキーが見 Count
つかって Cas 値が一致した Cas リクエストの数。
CasMisses
キャッシュが受信したが、リクエストされたキー Count
が見つからない Cas リクエストの数。
CmdFlush
キャッシュが受信した flush コマンドの数。
Count
CmdGet
キャッシュが受信した get コマンドの数。
Count
CmdSet
キャッシュが受信した set コマンドの数。
Count
CurrConnections
特定の時点でキャッシュに接続された接続回数。 Count
Memcached の設計上の理由により、常に 10 以上
の数が返されます。
CurrItems
キャッシュに現在格納されている項目の数。
DecrHits
キャッシュが受信し、リクエストされたキーが見 Count
つかったデクリメントリクエストの数。
DecrMisses
キャッシュが受信したが、リクエストされたキー Count
が見つからなかったデクリメントリクエストの
数。
DeleteHits
キャッシュが受信し、リクエストされたキーが見 Count
つかった削除リクエストの数。
DeleteMisses
キャッシュが受信したが、リクエストされたキー Count
が見つからなかった削除リクエストの数。
Evictions
新しく書き込むための領域を確保するためにキャッ Count
シュが排除した、期限切れではない項目の数。
GetHits
キャッシュが受信し、リクエストされたキーが見 Count
つかった get リクエストの数。
GetMisses
キャッシュが受信したが、リクエストされたキー Count
が見つからなかった get リクエストの数。
IncrHits
キャッシュが受信し、リクエストされたキーが見 Count
つかったインクリメントリクエストの数。
IncrMisses
キャッシュが受信したが、リクエストされたキー Count
が見つからなかったインクリメントリクエストの
数。
Reclaimed
新しく書き込むための領域を確保するためにキャッ Count
シュが排除した、期限切れ項目の数。
Memcached 1.4.14 では、次のメトリックスが追加で提供されます。
API Version 2010-08-01
229
単位
Count
Amazon CloudWatch 開発者ガイド
Redis のメトリックス
メトリックス
説明
単位
BytesUsedForHash
ハッシュテーブルで現在使用されているバイト
数。
Bytes
CmdConfigGet
config get リクエストの累積数。
Count
CmdConfigSet
config set リクエストの累積数。
Count
CmdTouch
touch リクエストの累積数。
Count
CurrConfig
現在格納されている設定の数。
Count
EvictedUnfetched
設定されてからまったくタッチされていない LRU Count
キャッシュから排除された有効な項目の数。
ExpiredUnfetched
設定されてからまったくタッチされていない LRU Count
キャッシュから再生された有効期限切れの項目の
数。
SlabsMoved
移動されたスラブページの合計数。
TouchHits
タッチされて新しい有効期限を与えられたキーの Count
数。
TouchMisses
タッチされたが見つからなかった項目の数。
Count
Count
次の表は、算出されたキャッシュレベルのメトリックスについて示します。
メトリックス
説明
単位
NewConnections
キャッシュが受信した新しい接続の数。この値
Count
は、ある期間の変更を total_connections に記録す
ることによって memcached total_connections 統
計から算出されたものです。この値は、ElastiCache に予約された接続が 1 つあるため、常に 1
以上になります。
NewItems
キャッシュが格納した新しい項目の数。この値
Count
は、ある期間の変更を total_items に記録すること
によって memcached total_items 統計から算出さ
れたものです。
UnusedMemory
キャッシュが項目の格納に使用できる未使用メモ Bytes
リの量。この値は、memcached 統計のlimit_maxbytes と bytes のうち、 limit_maxbytes から bytes
を引いたものから算出しています。
Redis のメトリックス
次の表は、ElastiCache が提供するメトリックスを示します。ReplicationLag を除き、これらのメトリッ
クスは、Redis info コマンドから算出されます。各メトリックスは、キャッシュノードレベルで算出さ
れます。
Redis info コマンドの詳細は、http://redis.io/commands/info を参照してください。
以下も参照してください。
API Version 2010-08-01
230
Amazon CloudWatch 開発者ガイド
Redis のメトリックス
• ホストレベルのメトリックス (p. 228)
メトリックス
説明
単位
CurrConnections
クライアントの接続数(リードレプリカからの接 Count
続を除く)。
Evictions
maxmemory の制限のため排除されたキーの数。
Count
Reclaimed
キーの有効期限切れイベントの総数。
Count
NewConnections
この期間内にサーバーによって受け入れられた接 Count
続の総数。
BytesUsedForCache
Redis によって割り当てられた総バイト数。
Bytes
CacheHits
成功したキー検索の数。
Count
CacheMisses
失敗したキー検索の数。
Count
ReplicationLag
このメトリックスは、リードレプリカとして実行 Seconds
中のキャッシュノードにのみ適用できます。レプ
リカのプライマリキャッシュクラスターからの変
更適用の進行状況を秒で表します。
これらは特定の種類のコマンドの集計で、info commandstats から算出されています。
メトリックス
説明
単位
GetTypeCmds
get の種類のコマンドの総数。これは、すべての
get の種類のコマンド(get、mget、hget など)
を合計することで、Redis commandstats 統計か
ら算出されます。
Count
SetTypeCmds
set の種類のコマンドの総数。これは、すべての Count
set の種類のコマンド(set、hset など)を合計す
ることで、Redis commandstats 統計から算出さ
れます。
KeyBasedCmds
キーベースのコマンドの総数。これは、1 つ以上 Count
のキーに対して実行されるすべてのコマンドを合
計することで、Redis commandstats 統計から算
出されます。
StringBasedCmds
文字列ベースのコマンドの総数。これは、1 つ以 Count
上の文字列に対して実行されるすべてのコマンド
を合計することで、Redis commandstats 統計か
ら算出されます。
HashBasedCmds
ハッシュベースのコマンドの総数。これは、1 つ Count
以上のハッシュに対して実行されるすべてのコマ
ンドを合計することで、Redis commandstats 統
計から算出されます。
ListBasedCmds
リストベースのコマンドの総数。これは、1 つ以 Count
上のリストに対して実行されるすべてのコマンド
を合計することで、Redis commandstats 統計か
ら算出されます。
API Version 2010-08-01
231
Amazon CloudWatch 開発者ガイド
Amazon EBS のディメンションおよびメトリックス
メトリックス
説明
単位
SetBasedCmds
セットベースのコマンドの総数。これは、1 つ以 Count
上のセットに対して実行されるすべてのコマンド
を合計することで、Redis commandstats 統計か
ら算出されます。
SortedSetBasedCmds
ソートされたセットベースのコマンドの総数。こ Count
れは、1 つ以上のソートされたセットに対して実
行されるすべてのコマンドを合計することで、
Redis commandstats 統計から算出されます。
CurrItems
キャッシュの項目数。これは、キー空間全体のす Count
べてのキーを合計することで、Redis keyspace 統
計から算出されます。
Amazon EBS のディメンションおよびメトリック
ス
Abstract
Amazon CloudWatch で利用可能な Amazon Elastic Block Store (EBS)のディメンションおよびメトリックスを
すべて一覧表示します。
Amazon Elastic Block Store (Amazon EBS)は、複数のメトリックスのデータポイントを CloudWatch
に送信します。Amazon EBS マグネティック ボリュームおよび 汎用(SSD) ボリュームは 5 分ごと
にメトリックスを CloudWatch に自動的に送信します。Provisioned IOPS (SSD) ボリュームは、1 分間
のメトリックスを CloudWatch に自動的に送信します。Amazon EBS をモニタリングする方法につい
ては、「Linux インスタンス用 Amazon EC2 ユーザーガイド」の「Monitoring the Status of Your
Volumes」を参照してください。
Amazon EBS のメトリックス
Amazon CloudWatch GetMetricStatistics API を使用して、次の表にある任意の Amazon EBS ボ
リュームメトリックスを取得できます。類似したメトリックスはグループにまとめてあります。最初の
2 行に挙げたメトリックスは、Amazon EC2 インスタンスのローカルストアにも使用できます。
メトリックス
説明
VolumeReadBytes
指定された期間の I/O 操作に関する情報を提供します。Sum 統計は、期間
内に転送されたバイトの総数をレポートします。Average 統計は、期間中
の各 I/O オペレーションの平均サイズをレポートします。SampleCount 統
計は、期間中の I/O オペレーションの総数をレポートします。Minimum 統
計と Maximum 統計は、このメトリックスには関連しません。データは、ボ
リュームがアクティブな場合にのみ Amazon CloudWatch に報告されます。
ボリュームがアイドル状態の場合は、Amazon CloudWatch にデータは報告
されません。
VolumeWriteBytes
単位: バイト
API Version 2010-08-01
232
Amazon CloudWatch 開発者ガイド
Amazon EBS のメトリックス
メトリックス
説明
VolumeReadOps
指定期間内の I/O 操作の総数。
VolumeWriteOps
Note
その期間の 1 秒あたりの I/O 操作回数(IOPS)の平均を算出する
には、その期間の操作回数の合計をその期間の秒数で割ります。
単位: Count
VolumeTotalReadTime
VolumeTotalWriteTime
指定期間内に完了した操作すべての、操作に要した時間(秒)の合計。複
数のリクエストが同時に送信された場合は、この合計が期間の長さを超え
ることがあります。たとえば、期間が 5 分間(300 秒)で、その期間内に
完了した操作の数が 700 あり、1 つの操作に 1 秒かかるとすれば、この値
は 700 秒となります。
単位: Seconds
VolumeIdleTime
指定期間内に、読み取りと書き込みのどちらの操作も行われなかった時間
(秒)の合計。
単位: Seconds
VolumeQueueLength
指定期間内に完了を待っていた読み取りおよび書き込みの操作リクエスト
の数。
単位: Count
VolumeThroughputPercentage
Provisioned IOPS (SSD) ボリュームでのみ使用されます。Amazon EBS ボ
リュームにプロビジョニングされた合計 IOPS(1 秒間あたりの I/O 操作回
数)に対する、提供された IOPS の割合(パーセント)。Provisioned IOPS
(SSD) ボリュームは、1 年の 99.9 パーセントにわたり、プロビジョニング
された IOPS の 10 パーセント以内のパフォーマンスを提供します。
Note
書き込みの間、他に保留中の I/O リクエストが 1 分以内になけれ
ば、メトリックス値は 100% となります。また、お客様が行った操
作によって(たとえば使用率ピーク時にボリュームのスナップショッ
トを作成する、EBS-Optimized インスタンス以外でボリュームを実
行する、そのボリュームのデータに初めてアクセスするなど)EBS
ボリュームの I/O 性能が一時的に低下する場合があります。
単位: パーセント
VolumeConsumedRead- Provisioned IOPS (SSD) ボリュームでのみ使用されます。指定された期間
内に消費された読み書き操作の合計数(256K キャパシティーユニットに標
WriteOps
準化)。
それぞれ 256K より小さい I/O 操作は、1 消費 IOPS とカウントされます。
256K より大きい I/O 操作は、256K キャパシティーユニットでカウントさ
れます。たとえば、1024K I/O は 4 消費 IOPS としてカウントされます。
単位: Count
API Version 2010-08-01
233
Amazon CloudWatch 開発者ガイド
Amazon EBS メトリックスのディメンション
Amazon EBS メトリックスのディメンション
Amazon EBS が CloudWatch に送信するディメンションは Volume ID のみです。つまり、利用可能な
すべての統計は Volume ID でフィルタリングできます。
Amazon Elastic Compute Cloud のディメンション
およびメトリックス
Abstract
Amazon CloudWatch で利用可能な Amazon Elastic Compute Cloud (EC2)のディメンションおよびメトリックス
をすべて一覧表示します。
このセクションでは、Amazon Elastic Compute Cloud (Amazon EC2)が CloudWatch に送信するメ
トリックスとディメンションについて説明し、EC2 インスタンスの詳細モニタリング(毎分)を有効
にする方法を説明します。同一 Auto Scaling グループ内にある Amazon EC2 インスタンスに関連する
Auto Scaling グループメトリックスについては、Auto Scaling のディメンションおよびメトリック
ス (p. 213) を参照してください。
CloudWatch は、デフォルトではAmazon EC2 の基本モニタリング(5 分)を行います。Amazon EC2
インスタンスの詳細モニタリングを使用するには、それを有効化する必要があります。Amazon EC2
をモニタリングする方法については、「Linux インスタンス用 Amazon EC2 ユーザーガイド」の
「Monitoring Your Instances with CloudWatch」を参照してください。
Topics
• Amazon EC2 メトリックス (p. 234)
• Amazon EC2 メトリックスのディメンション (p. 237)
Amazon EC2 メトリックス
以下のメトリックスは、各 EC2 インスタンスから利用可能です。
メトリックス
説明
CPUCreditUsage
(T2 インスタンスにのみ有効)指定した期間内に消費される CPU
クレジット数です。
このメトリックスは、インスタンスに割り当てられた仮想 CPU に
よる命令を処理するために使用される、物理 CPU の時間を識別し
ます。
Note
CPU クレジットメトリックスは、5 分間隔で利用可能で
す。
単位: Count
API Version 2010-08-01
234
Amazon CloudWatch 開発者ガイド
Amazon EC2 メトリックス
メトリックス
説明
CPUCreditBalance
(T2 インスタンスにのみ有効)インスタンスが累積される CPU ク
レジット数です。
このメトリックスは、どのくらいの期間のインスタンスが指定され
たレートのベースラインパフォーマンスレベルを超えてバーストで
きるかを判断するために使用されます。
Note
CPU クレジットメトリックスは、5 分間隔で利用可能で
す。
単位: Count
CPUUtilization
割り当てられた EC2 コンピュートユニットのうち、現在インスタ
ンス上で使用されているものの比率。このメトリックスは、選択さ
れたインスタンス上でアプリケーションを実行するのに必要な処理
能力を表します。
Note
Amazon EC2 インスタンスタイプによっては、インスタン
スがフルプロセッサコアに割り当てられていない場合に、
オペレーティングシステムのツールが CloudWatch よりも
低い比率を示す場合があります。
単位: パーセント
DiskReadOps
指定された期間にインスタンスで利用できるすべてのエフェメラル
ディスクでの、完了した読み取り操作。インスタンスで Amazon
EBS ボリュームを使用する場合は、「Amazon EBS のメトリック
ス (p. 232)」を参照してください。
Note
その期間の 1 秒あたりの I/O 操作回数(IOPS)の平均を算
出するには、その期間の操作回数の合計をその期間の秒数
で割ります。
単位: Count
DiskWriteOps
指定された期間にインスタンスで利用できるすべてのエフェメラル
ディスクへの、完了した書き込み操作。インスタンスで Amazon
EBS ボリュームを使用する場合は、「Amazon EBS のメトリック
ス (p. 232)」を参照してください。
Note
その期間の 1 秒あたりの I/O 操作回数(IOPS)の平均を算
出するには、その期間の操作回数の合計をその期間の秒数
で割ります。
単位: Count
API Version 2010-08-01
235
Amazon CloudWatch 開発者ガイド
Amazon EC2 メトリックス
メトリックス
説明
DiskReadBytes
このインスタンスで利用できるすべてのエフェメラルディスクで
の、読み取りバイト数(インスタンスで Amazon EBS を使用して
いる場合は、「Amazon EBS のメトリックス (p. 232)」を参照して
ください)。
このメトリックスを使用すると、このインスタンスのハードディス
クからアプリケーションが読み取るデータの量がわかります。これ
を利用すると、アプリケーションの速度がわかります。
単位: バイト
DiskWriteBytes
このインスタンスで利用できるすべてのエフェメラルディスクで
の、書き込みバイト数(インスタンスで Amazon EBS を使用して
いる場合は、「Amazon EBS のメトリックス (p. 232)」を参照して
ください)。
このメトリックスを使用すると、このインスタンスのハードディス
クにアプリケーションが書き込むデータの量がわかります。これを
利用すると、アプリケーションの速度がわかります。
単位: バイト
NetworkIn
すべてのネットワークインターフェースでの、このインスタンスに
よって受信されたバイトの数。このメトリックスは、1 つのインス
タンス上での 1 つのアプリケーションへのネットワークトラフィッ
クの量を表しています。
単位: バイト
NetworkOut
すべてのネットワークインターフェースでの、このインスタンスか
ら送信されたバイトの数。このメトリックスは、1 つのインスタン
ス上での 1 つのアプリケーションからのネットワークトラフィック
の量を表しています。
単位: バイト
StatusCheckFailed
StatusCheckFailed_Instance と StatusCheckFailed_System の組み
合わせで、どちらかのステータスチェックが失敗したら報告しま
す。このメトリックスの値は 0 か 1 です。0 はステータスチェック
が成功したことを示します。1 はステータスチェックの失敗を示し
ます。
Note
ステータスチェックメトリックスは、1 分間隔で利用でき
ます。インスタンスを新しく起動した場合は、インスタン
スの初期化状態が完了しないと、ステータスチェックのメ
トリックスを利用できません。ステータスが実行中に変わっ
たら、数分以内にステータスチェックのメトリックスが利
用できるようになります。
単位: Count
API Version 2010-08-01
236
Amazon CloudWatch 開発者ガイド
Amazon EC2 メトリックスのディメンション
メトリックス
説明
StatusCheckFailed_Instance
最近 1 分間にインスタンスが EC2 インスタンスステータスチェッ
クに成功したかどうかを報告します。このメトリックスの値は 0 か
1 です。0 はステータスチェックが成功したことを示します。1 は
ステータスチェックの失敗を示します。
Note
ステータスチェックメトリックスは、1 分間隔で利用でき
ます。インスタンスを新しく起動した場合は、インスタン
スの初期化状態が完了しないと、ステータスチェックのメ
トリックスを利用できません。ステータスが実行中に変わっ
たら、数分以内にステータスチェックのメトリックスが利
用できるようになります。
単位: Count
StatusCheckFailed_System 最近 1 分間にインスタンスが EC2 システムステータスチェックに
成功したかどうかを報告します。このメトリックスの値は 0 か 1
です。0 はステータスチェックが成功したことを示します。1 はス
テータスチェックの失敗を示します。
Note
ステータスチェックメトリックスは、1 分間隔で利用でき
ます。インスタンスを新しく起動した場合は、インスタン
スの初期化状態が完了しないと、ステータスチェックのメ
トリックスを利用できません。ステータスが実行中に変わっ
たら、数分以内にステータスチェックのメトリックスが利
用できるようになります。
単位: Count
一般的に、新しい EC2 インスタンスの Amazon CloudWatch データは、クエリでリクエストされた最
初の期間(集約期間)の最後の 1 分以内で利用可能になります。期間(統計が集約される時間の長さ)
は Period パラメータで設定できます。期間の詳細については、期間 (p. 8) を参照してください。
EC2 インスタンスで現在利用可能なディメンション(例: ImageId または InstanceType)を使用し
て、返されるメトリックスの精度を上げることができます。EC2 で利用可能なディメンションの詳細
については、Amazon EC2 メトリックスのディメンション (p. 237) を参照してください。
Amazon EC2 メトリックスのディメンション
詳細モニタリングを使用している場合、下の表のいずれかのディメンションを用いて EC2 インスタン
スデータをフィルタリングできます。
API Version 2010-08-01
237
Amazon CloudWatch 開発者ガイド
Elastic Load Balancing のディメンションおよびメトリック
ス
ディメンション
説明
AutoScalingGroupName
このディメンションを指定すると、リクエストしたデータがフィル
タリングされて、指定したキャパシティグループ内のインスタンス
のものだけになります。AutoScalingGroup は、Auto Scaling サー
ビスを使用する場合に定義するインスタンスのコレクションです。
このディメンションを EC2 のメトリックスに対して使用できるの
は、インスタンスが AutoScalingGroup 内にあるときに限られます。
詳細モニタリングまたは基本モニタリングが有効になっているイン
スタンスに対して使用できます。
ImageId
このディメンションを指定すると、リクエストしたデータがフィル
タリングされて、この EC2 Amazon マシンイメージ(AMI)を実
行しているインスタンスのものだけになります。詳細モニタリング
が有効になっているインスタンスに対して使用できます。
InstanceId
このディメンションを指定すると、リクエストしたデータがフィル
タリングされて、指定のインスタンスのものだけになります。これ
を利用すると、どのインスタンスからのデータをモニタリングする
かを指定できます。詳細モニタリングが有効になっているインスタ
ンスに対して使用できます。
InstanceType
このディメンションを指定すると、リクエストしたデータがフィル
タリングされて、指定のインスタンスタイプで実行されているイン
スタンスのものだけになります。これを利用すると、実行されてい
るインスタンスのタイプでデータを分類することができます。たと
えば、m1.small インスタンスと m1.large インスタンスのデータを
比較して、アプリケーションに対するビジネス価値はどちらが上か
を判断します。詳細モニタリングが有効になっているインスタンス
に対して使用できます。
Elastic Load Balancing のディメンションおよびメ
トリックス
Abstract
Amazon CloudWatch で利用可能な Elastic Load Balancing のディメンションおよびメトリックスをすべて一覧表示
します。
Topics
• Elastic Load Balancing のメトリックス (p. 238)
• Elastic Load Balancing メトリックスのディメンション (p. 240)
このセクションでは、Elastic Load Balancing が CloudWatch に送信するメトリックスおよびディメン
ションについて説明します。CloudWatch はデフォルトで Elastic Load Balancing の詳細モニタリング
を行います。Amazon EC2 と異なり、特に詳細モニタリングを有効化する必要はありません。Elastic
Load Balancing をモニタリングする方法については、「Elastic Load Balancing 開発者ガイド」の
「Monitor Your Load Balancer Using Amazon CloudWatch」を参照してください。
Elastic Load Balancing のメトリックス
Elastic Load Balancing は、リクエストがロードバランサーを経由する場合のみ、メトリックスを
CloudWatch に報告します。ロードバランサーを経由するリクエストがある場合、Elastic Load Balancing
API Version 2010-08-01
238
Amazon CloudWatch 開発者ガイド
Elastic Load Balancing のメトリックス
は 60 秒間隔でメトリックスを測定し、送信します。ロードバランサーを経由するリクエストがない
か、メトリックスのデータがない場合、メトリックスは報告されません。
CloudWatch を通じて使用できるすべての統計が、Elastic Load Balancing のすべてのメトリックに適用
されるわけではありませんが、すべて利用できます。各メトリックスに関する推奨の統計を認識し、最
も有益な情報を追跡できるようにしてください。
次の CloudWatch メトリックスが Elastic Load Balancing で使用できます。
メトリックス
説明
HealthyHostCount
各アベイラビリティーゾーンの正常なインスタンス数。インス
タンスは、ヘルスチェックに設定されている状態のしきい値を
満たせば正常な状態と見なされます。クロスゾーンの負荷分散
が有効な場合、すべてのアベイラビリティーゾーンにわたって
正常なインスタンスの数が算出されます。
レポート要件: 登録されたインスタンスがあります
推奨統計: average
UnHealthyHostCount
各アベイラビリティーゾーンの異常なインスタンス数。インス
タンスは、ヘルスチェックに対して構成された異常なしきい値
を超えた場合に、異常な状態と見なされます。クロスゾーンの
負荷分散が有効な場合、すべてのアベイラビリティーゾーンに
わたって異常なインスタンスの数が算出されます。
レポート要件: 登録されたインスタンスがあります
推奨統計: average
RequestCount
受信され、登録されたインスタンスにルーティングされた、完
了したリクエスト数。
レポート要件: ゼロ以外の値がある
推奨統計: sum
Latency
リクエストがロードバランサーから送信され、応答を受信する
までの経過時間(秒)。
レポート要件: ゼロ以外の値がある
推奨統計: average
HTTPCode_ELB_4XX
リスナーが HTTP または HTTPS プロトコルを使用するよう設
定されている場合、ロードバランサーによって生成される HTTP
4XX クライアントエラーコード数。リクエストの形式が不正な
場合、または不完全な場合は、クライアントエラーが生成され
ます。
レポート要件: ゼロ以外の値がある
推奨統計: sum
HTTPCode_ELB_5XX
リスナーが HTTP または HTTPS プロトコルを使用するよう設
定されている場合、ロードバランサーによって生成される HTTP
5XX サーバーエラーコード数。これには、登録されたインスタ
ンスによって生成される応答コードは含まれません。
ロードバランサーに登録されている正常なインスタンスがない
場合、またはリクエストレートがインスタンスまたはロードバ
ランサーの容量を超える場合、このメトリックスが報告されま
す。
レポート要件: ゼロ以外の値がある
推奨統計: sum
API Version 2010-08-01
239
Amazon CloudWatch 開発者ガイド
Elastic Load Balancing メトリックスのディメンション
メトリックス
説明
HTTPCode_Backend_2XX
HTTPCode_Backend_3XX
HTTPCode_Backend_4XX
HTTPCode_Backend_5XX
登録されたインスタンスによって生成された HTTP 応答コード
の数。これには、ロードバランサーによって生成される応答コー
ドは含まれません。
レポート要件: ゼロ以外の値がある
推奨統計: sum
BackendConnectionErrors
ロードバランサーと登録されたインスタンス間で正常に確立さ
れなかった接続数。エラーが発生すると、ロードバランサーは
接続を再試行するため、このカウントはリクエストレートを上
回ります。
レポート要件: ゼロ以外の値がある
推奨統計: sum
SurgeQueueLength
登録されたインスタンスへの送信が保留中のリクエストの合計
数。
レポート要件: ゼロ以外の値がある
推奨統計: max
SpilloverCount
キューがいっぱいなため、拒否されたリクエストの総数。
レポート要件: ゼロ以外の値がある
推奨統計: sum
Elastic Load Balancing メトリックスのディメンショ
ン
Elastic Load Balancing で現在利用可能なディメンションを使用して、クエリによって返されるメトリッ
クスの精度を上げることができます。たとえば、HealthyHostCount および LoadBalancerName ディメ
ンションと AvailabilityZone ディメンションを使用して、特定の期間の指定されたアベイラビリティー
ゾーンにある指定されたロードバランサーの背後にある良好なインスタンスの平均数を取得することが
できます。
Elastic Load Balancing のデータの集計には、以下の表に示したディメンションを使用することができ
ます。
ディメンション
説明
LoadBalancerName
メトリックスデータを、指定のロードバランサーに登録されているインス
タンスのものだけに制限します。
AvailabilityZone
メトリックスデータを、指定のアベイラビリティーゾーンのロードバラン
サーに制限します。
API Version 2010-08-01
240
Amazon CloudWatch 開発者ガイド
Amazon Elastic MapReduce のディメンションおよびメト
リックス
Amazon Elastic MapReduce のディメンションお
よびメトリックス
Abstract
Amazon CloudWatch で利用可能な Amazon Elastic MapReduce のディメンションおよびメトリックスをすべて一
覧表示します。
このセクションでは、Amazon Elastic MapReduce (Amazon EMR)が CloudWatch に送信するメト
リックスおよびディメンションについて説明します。すべての Amazon EMR ジョブフローでは、5 分
間隔でメトリックスが自動送信されます。2 週間分のメトリックスがアーカイブされ、それより古い
データは破棄されます。Amazon EMR をモニタリングする方法については、「Amazon Elastic
MapReduce 開発者ガイド」の「Monitor Metrics with Amazon CloudWatch」を参照してください。
Amazon EMR メトリックス
Amazon EMR は、以下のメトリックスを Amazon CloudWatch に送信します。
Note
Amazon EMR は クラスター からメトリックスを引き出します。クラスター にアクセスできな
くなると、その クラスター が再度利用できるようになるまでメトリックスは報告されません。
メトリックス
説明
CoreNodesPending
割り当て待機中のコアノードの数。リクエストされたすべての
コアノードが直ちに使用可能になるとは限りません。このメト
リックスでは、保留中のリクエストを報告します。このメト
リックスのデータポイントは、対応するインスタンスグループ
が存在する場合にのみ報告されます。
ユースケース: クラスター の状態を監視する
単位: Count
CoreNodesRunning
動作中のコアノードの数。このメトリックスのデータポイント
は、対応するインスタンスグループが存在する場合にのみ報告
されます。
ユースケース: クラスター の状態を監視する
単位: Count
HBaseBackupFailed
前回のバックアップに失敗したかどうか。デフォルトでは 0 に
設定されており、前回のバックアップが失敗した場合は 1 に更
新されます。このメトリックスは、HBase クラスター につい
てのみ報告されます。
ユースケース: HBase バックアップを監視する
単位: Count
API Version 2010-08-01
241
Amazon CloudWatch 開発者ガイド
Amazon EMR メトリックス
メトリックス
説明
HBaseMostRecentBackupDuration
前回のバックアップが完了するのにかかった時間。このメト
リックスは、前回完了したバックアップが成功したか失敗した
かに関係なく設定され、バックアップの進行中に、バックアッ
プが開始してからの分数を返します。このメトリックスは、
HBase クラスター についてのみ報告されます。
ユースケース: HBase バックアップを監視する
単位: Minutes
HBaseTimeSinceLastSuccessful- クラスターで前回成功した HBase バックアップが開始してか
ら経過した分数。このメトリックスは、HBase クラスター に
Backup
ついてのみ報告されます。
ユースケース: HBase バックアップを監視する
単位: Minutes
HDFSBytesRead
HDFS からの読み込みバイト数。
ユースケース: クラスター のパフォーマンスを分析し、クラス
ター の進捗状況を監視する
単位: Count
HDFSBytesWritten
HDFS への書き込みバイト数。
ユースケース: クラスター のパフォーマンスを分析し、クラス
ター の進捗状況を監視する
単位: Count
HDFSUtilization
現在使用されている HDFS ストレージの割合。
ユースケース: クラスター のパフォーマンスを分析する
単位: パーセント
IsIdle
クラスター は作業を行っていないが、まだ有効で課金されてい
ることを示します。タスクもジョブも実行されていない場合は
1 に設定され、それ以外の場合は 0 に設定されます。この値は
5 分間隔で確認され、値が 1 の場合は、確認時にクラスター が
アイドル状態だったことを示します。5 分間ずっとアイドル状
態だったことを示すわけではありません。誤検出を避けるに
は、5 分ごとの確認で、複数回連続して値が 1 の場合に通知す
るようアラームを指定する必要があります。例えば、30 分間以
上にわたってこの値が 1 だった場合に通知するようアラームを
指定できます。
ユースケース: クラスター のパフォーマンスを監視する
単位: Count
JobsFailed
クラスター の、失敗したジョブの数。
ユースケース: クラスター の状態を監視する
単位: Count
API Version 2010-08-01
242
Amazon CloudWatch 開発者ガイド
Amazon EMR メトリックス
メトリックス
説明
JobsRunning
クラスター の、現在実行中のジョブの数。
ユースケース: クラスター の状態を監視する
単位: Count
LiveDataNodes
Hadoop から処理を受け取るデータノードの割合。
ユースケース: クラスター の状態を監視する
単位: パーセント
LiveTaskTrackers
機能しているタスクトラッカーの割合。
ユースケース: クラスター の状態を監視する
単位: パーセント
MapSlotsOpen
未使用のマップタスクの容量。指定された クラスター のマッ
プタスクの最大数から、その クラスター で現在実行中のマッ
プタスクの合計数を差し引いて算出します。
ユースケース: クラスター のパフォーマンスを分析する
単位: Count
MissingBlocks
HDFS にレプリカがないブロックの数。これらのブロックは破
損している可能性があります。
ユースケース: クラスター の状態を監視する
単位: Count
ReduceSlotsOpen
未使用の削減タスクの容量。指定された クラスター の削減タ
スクの最大キャパシティから、その クラスター で現在実行中
の削減タスクの数を差し引いて算出します。
ユースケース: クラスター のパフォーマンスを分析する
単位: Count
RemainingMapTasks
各ジョブの残存マップタスクの数。スケジューラーがインス
トールされ、複数のジョブが実行中の場合は、複数のグラフが
生成されます。残存マップタスクとは、実行中、強制終了済
み、完了済み以外の状態のものをいいます。
ユースケース: クラスター の進捗状況を監視する
単位: Count
RemainingMapTasksPerSlot
合計残存マップタスク数と、クラスター内で使用できる合計
マップスロット数の比率。
ユースケース: クラスター のパフォーマンスを分析する
単位: Ratio
API Version 2010-08-01
243
Amazon CloudWatch 開発者ガイド
Amazon EMR メトリックス
メトリックス
説明
RemainingReduceTasks
各ジョブの残存削減タスクの数。スケジューラーがインストー
ルされ、複数のジョブが実行中の場合は、複数のグラフが生成
されます。
ユースケース: クラスター の進捗状況を監視する
単位: Count
RunningMapTasks
各ジョブの実行マップタスクの数。スケジューラーがインス
トールされ、複数のジョブが実行中の場合は、複数のグラフが
生成されます。
ユースケース: クラスター の進捗状況を監視する
単位: Count
RunningReduceTasks
各ジョブの実行削減タスクの数。スケジューラーがインストー
ルされ、複数のジョブが実行中の場合は、複数のグラフが生成
されます。
ユースケース: クラスター の進捗状況を監視する
単位: Count
S3BytesRead
Amazon S3 からの読み込みバイト数。
ユースケース: クラスター のパフォーマンスを分析し、クラス
ター の進捗状況を監視する
単位: Count
S3BytesWritten
Amazon S3 への書き込みバイト数。
ユースケース: クラスター のパフォーマンスを分析し、クラス
ター の進捗状況を監視する
単位: Count
TaskNodesPending
割り当て待機中のコアノードの数。リクエストされたすべての
タスクノードが直ちに使用可能になるとは限りません。このメ
トリックスでは、保留中のリクエストを報告します。このメト
リックスのデータポイントは、対応するインスタンスグループ
が存在する場合にのみ報告されます。
ユースケース: クラスター の状態を監視する
単位: Count
TaskNodesRunning
動作中のタスクノードの数。このメトリックスのデータポイン
トは、対応するインスタンスグループが存在する場合にのみ報
告されます。
ユースケース: クラスター の状態を監視する
単位: Count
API Version 2010-08-01
244
Amazon CloudWatch 開発者ガイド
Amazon EMR ディメンション
メトリックス
説明
TotalLoad
同時データ転送数の合計。
ユースケース: クラスター の状態を監視する
単位: Count
Amazon EMR ディメンション
Amazon EMR では以下のディメンションが利用可能です。
ディメンション
説明
ClusterId
クラスター の識別子。この値を見つけるには、Amazon
EMR コンソールで クラスター をクリックします。jXXXXXXXXXXXXX という書式が使用されます。
JobId
クラスター 内のジョブの識別子。この識別子を使用して ク
ラスター から返されたメトリックスをフィルタ処理し、ク
ラスター 内の 1 つのジョブに適用されるメトリックスに絞
り込みます。JobId では、job_XXXXXXXXXXXX_XXXX と
いう書式が使用されます。
Amazon Kinesis のディメンションおよびメトリッ
クス
Abstract
Amazon CloudWatch で利用可能な Amazon Kinesis のディメンションおよびメトリックスをすべて一覧表示しま
す。
Amazon Kinesis はストリームのメトリックスとディメンションを CloudWatch に送信します。Amazon
Kinesis をモニタリングする方法については、『Amazon Kinesis Developer Guide』の「Amazon
CloudWatch を使用した Amazon Kinesis のモニタリング」を参照してください。
Topics
• Amazon Kinesis メトリックス (p. 245)
• Amazon Kinesis メトリックスのディメンション (p. 247)
Amazon Kinesis メトリックス
Amazon Kinesis は以下のメトリックスを CloudWatch に送信します。
メトリックス
説明
PutRecord.Bytes
指定された期間に PutRecord を使用して Amazon Kinesis ストリームに送
信されたバイト数。
単位: バイト
API Version 2010-08-01
245
Amazon CloudWatch 開発者ガイド
Amazon Kinesis メトリックス
メトリックス
説明
PutRecord.Latency
指定された期間に測定された PutRecord オペレーションごとにかかった時
間。
単位: ミリ秒
PutRecord.Success
指定された期間に測定された、Amazon Kinesis ストリームごとの成功した
PutRecord オペレーションの数。
単位: Count
PutRecords.Bytes
指定された期間に PutRecords を使用して Amazon Kinesis ストリームに
送信されたバイト数。
単位: バイト
PutRecords.Latency 指定された期間に測定された PutRecords オペレーションごとにかかった
時間。
単位: ミリ秒
PutRecords.Records 指定された期間に測定された、Amazon Kinesis ストリームごとの PutRecords オペレーションの正常なレコード数。
単位: Count
PutRecords.Success 指定された期間に測定された、Amazon Kinesis ストリームごとの成功した
PutRecords オペレーションの数。
単位: Count
IncomingBytes
指定された期間に、Amazon Kinesis ストリームに正常に送信されたバイト
数。このメトリックスには、PutRecord および PutRecords のバイト数
も含まれます。
単位: バイト
IncomingRecords
指定された期間に、Amazon Kinesis ストリームに正常に送信されたレコー
ドの数。このメトリックスには、PutRecord および PutRecords のレコー
ド数も含まれます。
単位: Count
GetRecords.Bytes
指定された期間に測定された、ストリームから取得したバイト数。
単位: バイト
GetRecords.Iterat- ストリームに対して行われたすべての GetRecords 呼び出しの最後のレ
orAgeMilliseconds コードの期間(指定された時間に測定)。期間は、現在の時刻と、GetRecords 呼び出しの最後のレコードがストリームに書き込まれた時刻の差で
す。Maximum 統計は、指定された期間に消費された最も古いレコードを表
し、Minimum は最も新しいレコードを表します。
単位: ミリ秒
GetRecords.Latency 指定された期間に測定された GetRecords オペレーションごとにかかった
時間。
単位: ミリ秒
API Version 2010-08-01
246
Amazon CloudWatch 開発者ガイド
Amazon Kinesis メトリックスのディメンション
メトリックス
説明
GetRecords.Success 指定された期間に測定された、ストリームごとの成功した GetRecords オ
ペレーションの数。
単位: Count
Amazon Kinesis メトリックスのディメンション
次のディメンションを使用して Amazon Kinesis のメトリックスを絞り込むことができます。
ディメンション
説明
StreamName
Amazon Kinesis ストリームの名前。使用可能なすべての統計が
StreamName によってフィルタリングされます。
Amazon Machine Learning のディメンションおよ
びメトリックス
Abstract
Amazon CloudWatch で利用可能な Amazon Machine Learning のディメンションおよびメトリックスをすべて一覧
表示します。
このセクションでは、Amazon Machine Learning が CloudWatch に送信するメトリックスおよびディ
メンションについて説明します。Amazon Machine Learning はメトリックスを 5 分ごとに送信します。
Amazon Machine Learning をモニタリングする方法については、「Amazon Machine Learning Developer
Guide」の「Amazon CloudWatch メトリックスによる Amazon ML のモニタリング」を参照してくだ
さい。
Topics
• Amazon ML メトリックス (p. 247)
• Amazon Machine Learning メトリックスのディメンション (p. 248)
Amazon ML メトリックス
Amazon Machine Learning は以下のメトリックスを CloudWatch に送信します。
メトリックス
説明
PredictCount
指定した期間に Amazon ML によって受け取られた監視の数。
単位: Count
PredictFailureCount
指定された期間に Amazon ML によって受け取られた、無効または正しい
形式ではない監視の数。
単位: Count
API Version 2010-08-01
247
Amazon CloudWatch 開発者ガイド
Amazon Machine Learning メトリックスのディメンション
Amazon Machine Learning メトリックスのディメン
ション
Amazon ML のデータは、下の表にあるいずれかのディメンションでフィルタリングできます。
ディメンション
説明
MLModelId
Amazon ML モデルの識別子。使用可能なすべての統計が MLModelId
によってフィルタリングされます。
RequestMode
監視がバッチ予測リクエストの一部として受け取られたか、リアル
タイムの予測リクエストとして受け取られたかを示すインジケー
タ。使用可能なすべての統計が RequestMode によってフィルタリ
ングされます。
AWS OpsWorks のディメンションおよびメトリッ
クス
Abstract
Amazon CloudWatch で利用可能な AWS OpsWorks のディメンションおよびメトリックスをすべて一覧表示しま
す。
このセクションでは、AWS OpsWorks が CloudWatch に送信するメトリックスおよびディメンション
について説明します。CloudWatch はデフォルトで AWS OpsWorks の詳細モニタリングを行います。
AWS OpsWorks は、アクティブな各スタックのメトリックスを毎分送信します。Amazon EC2 や Auto
Scaling とは異なり、特に詳細モニタリングを有効化する必要はありません。AWS OpsWorks をモニタ
リングする方法については、「AWS OpsWorks ユーザーガイド」の「Monitoring」を参照してくださ
い。
Topics
• AWS OpsWorks メトリックス (p. 248)
• AWS OpsWorks メトリックスのディメンション (p. 249)
AWS OpsWorks メトリックス
次のメトリックスは AWS OpsWorks から入手できます。
メトリックス
説明
cpu_idle
CPU がアイドル状態の時間の割合。
単位: パーセント
cpu_nice
正の nice 値を持つ CPU が、スケジュールの優先度が低いプロセスを処理
する時間の割合。詳細については、nice(Unix) を参照してください。
単位: パーセント
API Version 2010-08-01
248
Amazon CloudWatch 開発者ガイド
AWS OpsWorks メトリックスのディメンション
メトリックス
説明
cpu_system
CPU がシステム操作を処理する時間の割合。
単位: パーセント
cpu_user
CPU がユーザー操作を処理する時間の割合。
単位: パーセント
cpu_waitio
CPU が入力/出力操作を処理する時間の割合。
単位: パーセント
load_1
1 分間を超えるロードアベレージ。
単位: Unix load units
load_5
5 分間を超えるロードアベレージ。
単位: Unix load units
load_15
15 分間を超えるロードアベレージ。
単位: Unix load units
memory_buffers
バッファされたメモリの量。
単位: KB
memory_cached
キャッシュされたメモリの量。
単位: KB
memory_free
空きメモリの量。
単位: KB
memory_swap
スワップ領域の量。
単位: KB
memory_total
メモリの合計量。
単位: KB
memory_used
使用中のメモリの量。
単位: KB
procs
アクテイブなプロセスの数。
単位: Count
AWS OpsWorks メトリックスのディメンション
AWS OpsWorks データは、下の表にあるいずれかのディメンションでフィルタリングできます。
API Version 2010-08-01
249
Amazon CloudWatch 開発者ガイド
Amazon Redshift のディメンションおよびメトリックス
ディメンション
説明
StackId
スタックの平均値。
LayerId
レイヤーの平均値。
InstanceId
インスタンスの平均値。
Amazon Redshift のディメンションおよびメトリッ
クス
Abstract
Amazon CloudWatch で利用可能な Amazon RedShift のディメンションおよびメトリックスをすべて一覧表示しま
す。
このセクションでは、Amazon Redshift が CloudWatch に送信するメトリックスおよびディメンション
について説明します。CloudWatch はデフォルトで Amazon Redshift の詳細モニタリングを行います。
Amazon Redshift は、アクティブな各クラスターのメトリックスを毎分送信します。Amazon EC2 や
Auto Scaling とは異なり、特に詳細モニタリングを有効化する必要はありません。Amazon Redshift を
モニタリングする方法については、「Amazon Redshift Cluster Management Guide」の「Monitoring
Amazon Redshift Cluster Performance」を参照してください。
Topics
• Amazon Redshift メトリックス (p. 250)
• Amazon Redshift メトリックスのディメンション (p. 252)
Amazon Redshift メトリックス
次のメトリックスは Amazon Redshift から入手できます。
メトリックス
説明
CPUUtilization
CPU 使用率(パーセンテージ)。このメトリックスは、クラスターに対す
るすべてのノード(リーダーおよびコンピューティング)の CPU 使用率の
値の集計を表します。
単位: パーセント
ディメンション: NodeID, ClusterIdentifier
DatabaseConnections
クラスターへのデータベース接続の数。
単位: Count
ディメンション: ClusterIdentifier
API Version 2010-08-01
250
Amazon CloudWatch 開発者ガイド
Amazon Redshift メトリックス
メトリックス
説明
HealthStatus
クラスターの状態を示します。クラスターは毎分データベースに接続し、
簡単なクエリを実行します。この操作を正しく実行できる場合、クラスター
は正常な状態であると見なされます。それ以外の場合、クラスターは正常
な状態ではありません。正常でない状態が発生する可能性があるのは、ク
ラスターデータベースに極端に高い負荷がかかっているか、クラスター上
のデータベースに設定の問題がある場合です。ただし、クラスターがメン
テナンス中の場合は例外となります。メンテナンスタスクのためクラスター
を利用できなかったとしても、クラスターでは正常な状態が維持されてい
ます。詳細については、『Amazon Redshift Cluster Management Guide』
の「メンテナンスウィンドウ」を参照してください。
Note
Amazon CloudWatch では、このメトリックスは 1 または 0 と報告
されますが、Amazon CloudWatch コンソールでは、このメトリッ
クはわかりやすくするために HEALTHY または UNHEALTHY という
単語で表示されます。このメトリックスが Amazon CloudWatch コ
ンソールで表示される場合、サンプリング平均は無視され、HEALTHY
または UNHEALTHY のみが表示されます。Amazon CloudWatch で
は、サンプリングの問題により、1 または 0 以外の値が発生する場
合があります。HealthStatus に対して 1 未満の値は 0(UNHEALTHY)と報告されます。
単位: 1/0(Amazon CloudWatch コンソールでは HEALTHY/UNHEALTHY)
ディメンション: ClusterIdentifier
MaintenanceMode
クラスターがメンテナンスモードかどうかを示します。
Note
Amazon CloudWatch では、このメトリックスは 1 または 0 と報告
されますが、Amazon CloudWatch コンソールでは、このメトリッ
クはわかりやすくするために ON または OFF という単語で表示され
ます。このメトリックスが Amazon CloudWatch コンソールで表示
される場合、サンプリング平均は無視され、ON または OFF のみが
表示されます。Amazon CloudWatch では、サンプリングの問題に
より、1 または 0 以外の値が発生する場合があります。MaintenanceMode に対して 0 より大きい値は 1(ON)と報告されます。
単位: 1/0(Amazon CloudWatch コンソールでは ON/OFF)。
ディメンション: ClusterIdentifier
NetworkReceiveThroughput
ノードまたはクラスターがデータを受け取るレート。
単位: バイト/秒(Amazon CloudWatch コンソールでは MB/秒)
ディメンション: NodeID, ClusterIdentifier
NetworkTransmitThroughput
ノードまたはクラスターがデータを書き込むレート。
単位: バイト/秒(Amazon CloudWatch コンソールでは MB/秒)
ディメンション: NodeID, ClusterIdentifier
API Version 2010-08-01
251
Amazon CloudWatch 開発者ガイド
Amazon Redshift メトリックスのディメンション
メトリックス
説明
PercentageDiskSpaceUsed
使用中のディスク容量の割合。
単位: パーセント
ディメンション: NodeID, ClusterIdentifier
ReadIOPS
1 秒あたりのディスク読み取り操作の平均回数。
単位: 回/秒
ディメンション: NodeID
ReadLatency
ディスク読み取り I/O 操作にかかる平均時間。
単位: Seconds
ディメンション: NodeID
ReadThroughput
1 秒あたりのディスクからの平均読み取りバイト数。
単位: バイト(Amazon CloudWatch コンソールでは GB/秒)
ディメンション: NodeID
WriteIOPS
1 秒あたりの書き込み操作の平均回数
単位: 回/秒
ディメンション: NodeID
WriteLatency
ディスク書き込み I/O 操作にかかる平均時間。
単位: Seconds
ディメンション: NodeID
WriteThroughput
1 秒あたりのディスクへの平均書き込みバイト数。
単位: バイト(Amazon CloudWatch コンソールでは GB/秒)
ディメンション: NodeID
Amazon Redshift メトリックスのディメンション
Amazon Redshift のデータは、下の表にあるいずれかのディメンションでフィルタリングできます。
ディメンション
説明
NodeID
フィルタにより、クラスターのノードに固有のデータが要求されま
した。NodeID は、"Leader"、"Shared"、または "Compute-N" のい
ずれかになります。ここで、N はクラスターのノード数を表す 0、
1、... です。"Shared" は、クラスターには 1 つのノードのみがある
ことを意味します。つまり、リーダーノードとコンピューティング
ノードが組み合わされています。
API Version 2010-08-01
252
Amazon CloudWatch 開発者ガイド
Amazon RDS のディメンションおよびメトリックス
ディメンション
説明
ClusterIdentifier
フィルタにより、クラスターに固有のデータが要求されました。ク
ラスターに固有のメトリックスには、HealthStatus、MaintenanceMode、DatabaseConnections があります。ノードのメト
リックスでもある、このディメンションの全般的なメトリックス
(ReadIOPS など)は、ノードメトリックスデータの集計を表しま
す。これらのメトリックスは、リーダーノードおよびコンピュー
ティングノードの動作を集計するため、その解釈には注意が必要で
す。
Amazon RDS のディメンションおよびメトリック
ス
Abstract
Amazon CloudWatch で利用可能な Amazon Relational Database Service のディメンションおよびメトリックスを
すべて一覧表示します。
このセクションでは、Amazon Relational Database Service が CloudWatch に送信するメトリックスお
よびディメンションについて説明します。CloudWatch はデフォルトで Amazon RDS の詳細モニタリ
ングを行います。Amazon Relational Database Service は、アクティブな各データベースインスタンス
のメトリックスを毎分送信します。Amazon EC2 や Auto Scaling とは異なり、特に詳細モニタリング
を有効化する必要はありません。Amazon RDS をモニタリングする方法については、「Amazon Relational
Database Service ユーザーガイド」の「Monitoring a DB Instance」を参照してください。
Topics
• Amazon RDS メトリックス (p. 253)
• RDS メトリックスのディメンション (p. 255)
Amazon RDS メトリックス
Amazon Relational Database Service では次のメトリックスを使用できます。
メトリックス
説明
BinLogDiskUsage
マスターでバイナリログが占有するディスク領域の量。MySQL リードレプ
リカに適用されます。
単位: バイト
CPUUtilization
CPU 使用率。
単位: パーセント
API Version 2010-08-01
253
Amazon CloudWatch 開発者ガイド
Amazon RDS メトリックス
メトリックス
説明
CPUCreditUsage
(T2 インスタンスにのみ有効)指定した期間内に消費される CPU クレジッ
ト数です。
このメトリックスは、インスタンスに割り当てられた仮想 CPU による命令
を処理するために使用される、物理 CPU の時間を識別します。
Note
CPU クレジットメトリックスは、5 分間隔で利用可能です。
単位: Count
CPUCreditBalance
(T2 インスタンスにのみ有効)インスタンスが累積される CPU クレジッ
ト数です。
このメトリックスは、どのくらいの期間のインスタンスが指定されたレー
トのベースラインパフォーマンスレベルを超えてバーストできるかを判断
するために使用されます。
Note
CPU クレジットメトリックスは、5 分間隔で利用可能です。
単位: Count
DatabaseConnections
使用中のデータベース接続の数。
単位: Count
DiskQueueDepth
未処理のディスク I/O アクセス(読み取り/書き込みリクエスト)の数。
単位: Count
FreeableMemory
使用可能な RAM の容量。
単位: バイト
FreeStorageSpace
使用可能なストレージ領域の容量。
単位: バイト
ReplicaLag
ソース DB インスタンスからリードレプリカ DB インスタンスまでのラグ
MySQL リードレプリカに適用されます。
ReplicaLag メトリックには、MySQL SHOW SLAVE STATUS コマンドの
Seconds_Behind_Master フィールドの値が報告されます。詳細について
は、「SHOW SLAVE STATUS」を参照してください。
単位: Seconds
SwapUsage
DB インスタンスで使用するスワップ領域の量。
単位: バイト
ReadIOPS
1 秒あたりのディスク I/O 操作の平均回数。
単位: Count/Second
API Version 2010-08-01
254
Amazon CloudWatch 開発者ガイド
RDS メトリックスのディメンション
メトリックス
説明
WriteIOPS
1 秒あたりのディスク I/O 操作の平均回数。
単位: Count/Second
ReadLatency
1 回のディスク I/O 操作にかかる平均時間。
単位: Seconds
WriteLatency
1 回のディスク I/O 操作にかかる平均時間。
単位: Seconds
ReadThroughput
1 秒あたりのディスクからの平均読み取りバイト数。
単位: バイト/Second
WriteThroughput
1 秒あたりのディスクへの平均書き込みバイト数。
単位: バイト/Second
NetworkReceiveThroughput
モニタリングとレプリケーションに使用する顧客データベーストラフィッ
クと Amazon RDS トラフィックの両方を含む、DB インスタンスの受信ネッ
トワークトラフィック。
単位: バイト/秒
NetworkTransmitThroughput
モニタリングとレプリケーションに使用する顧客データベーストラフィッ
クと Amazon RDS トラフィックの両方を含む、DB インスタンスの送信ネッ
トワークトラフィック。
単位: バイト/秒
RDS メトリックスのディメンション
Amazon RDS のデータは、下の表にあるいずれかのディメンションでフィルタリングできます。
ディメンション
説明
DBInstanceIdentifier
このディメンションを指定すると、リクエストしたデータをフィル
タリングして、特定のデータベースインスタンスを抽出することが
できます。
DatabaseClass
このディメンションを指定すると、リクエストしたデータをフィル
タリングして、特定のデータベースクラスに属する全インスタンス
を抽出することができます。例えば、メトリックスを組み合わせ
て、db.m1.small というデータベースクラスに属する全インスタ
ンスを抽出することができます。
EngineName
このディメンションを指定すると、リクエストしたデータをフィル
タリングして、特定のエンジン名を有するインスタンスだけを抽出
することができます。例えば、メトリックスを組み合わせて、mysql
というエンジン名を有する全インスタンスを抽出することができま
す。
API Version 2010-08-01
255
Amazon CloudWatch 開発者ガイド
Amazon Route 53 のディメンションおよびメトリックス
Amazon Route 53 のディメンションおよびメトリッ
クス
Abstract
Amazon CloudWatch で利用可能な Amazon Route 53 のディメンションおよびメトリックスをすべて一覧表示しま
す。
このセクションでは、Amazon Route 53 が CloudWatch に送信するメトリックスおよびディメンショ
ンについて説明します。CloudWatch はデフォルトで Amazon Route 53 の詳細モニタリングを行いま
す。Amazon Route 53 は、メトリックスを CloudWatch に毎分送信します。Amazon Route 53 をモニ
タリングする方法については、「Amazon Route 53 開発者ガイド」の「Monitoring Health Checks Using
Amazon CloudWatch」を参照してください。
Amazon Route 53 メトリックス
メトリックス
説明
HealthCheckStatus
CloudWatch で確認しているヘルスチェックエンドポイントの
ステータス。[1] は正常を示し、[0] は異常を示します。
有効な統計: Minimum
単位: なし
HealthCheckPercentageHealthy Amazon Route 53 ヘルスチェッカーが選択したエンドポイント
を正常であるとみなす割合。
有効な統計: Minimum、Maximum、Average、
単位: パーセント
Amazon Route 53 メトリックスのディメンション
Amazon Route 53 メトリックスは AWS/Route53 名前空間を使用し、1 つのディメンション、
HealthCheckId のメトリックスを提供します。これは、各ヘルスチェックで自動的に生成される識別子
です。メトリックスを取得する場合は、HealthCheckId ディメンションを入力する必要があります。
詳細については、Amazon Route 53 開発者ガイド の「Monitoring Health Checks Using CloudWatch」
を参照してください。
Amazon Simple Notification Service のディメンショ
ンおよびメトリックス
Abstract
Amazon CloudWatch で利用可能な Amazon Simple Notification Service(SNS)のディメンションおよびメトリッ
クスをすべて一覧表示します。
Amazon Simple Notification Service は、複数のメトリックスのデータポイントを CloudWatch に送信し
ます。すべてのアクティブなトピックでは、5 分ごとにメトリックスが CloudWatch に自動送信されま
API Version 2010-08-01
256
Amazon CloudWatch 開発者ガイド
Amazon Simple Notification Service メトリックス
す。現在、詳細モニタリング(1 分)のメトリックスは Amazon Simple Notification Service では使用
できません。トピックは、トピックの前回のアクティビティ(つまり任意の API の呼び出し)から 6
時間はアクティブな状態を保ちます。Amazon SNS をモニタリングする方法については、「Amazon
Simple Notification Service 開発者ガイド」の「Monitoring Amazon SNS with Amazon CloudWatch」を
参照してください。
Amazon Simple Notification Service メトリックス
このセクションでは、Amazon Simple Notification Service(Amazon SNS)が CloudWatch に送信する
メトリックスについて説明します。
メトリックス
説明
NumberOfMessagesPublished
発行されたメッセージの数。
単位: Count
有効な統計: Sum
発行されたメッセージのサイズ。
PublishSize
単位: バイト
有効な統計: Minimum、Maximum、Average、Count
NumberOfNotificationsDelivered
正常に配信されたメッセージの数。
単位: Count
有効な統計: Sum
NumberOfNotificationsFailed
SNS が配信に失敗したメッセージの数。
単位: Count
有効な統計: Sum
Amazon Simple Notification Service メトリックスの
ディメンション
Amazon Simple Notification Service は以下のディメンションを CloudWatch に送信します。
ディメンション
説明
Application
アプリケーションオブジェクトのフィルタ。APNS や GCM など、
サポートされるプッシュ通知サービスの 1 つに登録されているアプ
リケーションやデバイスを表す。
Application,Platform
アプリケーションおよびプラットフォームオブジェクトのフィル
タ。プラットフォームオブジェクトは、APNS や GCM など、サ
ポートされるプッシュ通知サービスで使用される。
Platform
APNS や GCM などのプッシュ通知サービスで使用されるプラット
フォームオブジェクトのフィルタ。
TopicName
Amazon SNS トピック名のフィルタ。
API Version 2010-08-01
257
Amazon CloudWatch 開発者ガイド
Amazon SQS のディメンションおよびメトリックス
Amazon SQS のディメンションおよびメトリック
ス
Abstract
Amazon CloudWatch で利用可能な Amazon Simple Queue Service のディメンションおよびメトリックスをすべて
一覧表示します。
Amazon SQS は、複数のメトリックスのデータポイントを CloudWatch に送信します。すべてのアク
ティブなキューでは、5 分ごとにメトリックスが CloudWatch に自動送信されます。現在、詳細モニタ
リング(1 分)のメトリックスは Amazon SQS では使用できません。キューは、キューの前回のアク
ティビティ(つまり任意の API の呼び出し)から 6 時間はアクティブの状態を保ちます。Amazon SQS
をモニタリングする方法については、「Amazon Simple Queue Service 開発者ガイド」の「Monitoring
Amazon SQS with Amazon CloudWatch」を参照してください。
Amazon SQS メトリックス
このセクションでは、Amazon Simple Queue Service(Amazon SQS)が CloudWatch に送信するメト
リックスについて説明します。
メトリックス
説明
NumberOfMessagesSent
キューに追加されたメッセージの数。
単位: Count
有効な統計: Sum
キューに追加されたメッセージのサイズ。
SentMessageSize
単位: バイト
有効な統計: Minimum、Maximum、Average、Count
ReceiveMessage API アクションへの呼び
出しで返されたメッセージの数。
NumberOfMessagesReceived
単位: Count
有効な統計: Sum
メッセージを返さなかった ReceiveMessage
API 呼び出しの数。
NumberOfEmptyReceives
単位: Count
有効な統計: Sum
キューから削除されたメッセージの数。
NumberOfMessagesDeleted
単位: Count
有効な統計: Sum
API Version 2010-08-01
258
Amazon CloudWatch 開発者ガイド
Amazon SQS メトリックスのディメンション
メトリックス
説明
ApproximateNumberOfMessagesDelayed
遅延が発生したため、すぐに読み取ることの
できない、キューのメッセージ数。これは、
キューが遅延キューとして設定されている場
合、またはメッセージが遅延パラメータとと
もに送信された場合に発生することがありま
す。
単位: Count
有効な統計: Average
ApproximateNumberOfMessagesVisible
キューから取得可能なメッセージの数。
単位: Count
有効な統計: Average
ApproximateNumberOfMessagesNotVisible
処理中のメッセージの数。メッセージがクラ
イアントに送信されたが、まだ削除されてい
ない場合、または表示期限に達していない場
合、メッセージは処理中とみなされます。
単位: Count
有効な統計: Average
Amazon SQS メトリックスのディメンション
Amazon SQS が CloudWatch に送信する唯一のディメンションは QueueName です。つまり、使用可
能なすべての統計が QueueName によってフィルタされます。
Amazon SWF のディメンションおよびメトリック
ス
Abstract
Amazon CloudWatch で利用可能な Amazon Simple Workflow Service のディメンションおよびメトリックスをすべ
て一覧表示します。
Amazon SWF は、複数のメトリックスのデータポイントを CloudWatch に送信します。CloudWatch
の Amazon SWF メトリックスの一部は時間間隔であり、常にミリ秒単位で測定されます。これらのメ
トリックスは通常、ワークフローおよびアクティビティのタイムアウトを設定できるワークフロー内の
実行段階に対応しており、それぞれに似た名前が付いています。たとえば、
DecisionTaskStartToCloseTime メトリックスは、ディシジョンタスクが実行開始されてから完了する
までの時間を測定します。この同じ期間に対し、DecisionTaskStartToCloseTimeout 値を設定できま
す。
その他に、結果をカウントとして報告する Amazon SWF メトリックスがあります。たとえば、
WorkflowsCanceled は、結果を 1 または 0 として記録しますが、これはワークフローがキャンセルさ
れたかどうかを表します。値が 0 の場合、メトリックスが報告されなかったのではなく、メトリックス
に記述された条件が発生しなかったことを示しているだけです。カウントを返すメトリックでは、最小
値および最大値は常に 0 または 1 ですが、平均は 0 ~ 1 の範囲の値になります。Amazon SWF を監視
API Version 2010-08-01
259
Amazon CloudWatch 開発者ガイド
ワークフローのメトリックス
する方法の詳細については、Amazon Simple Workflow Service 開発者ガイドの Viewing Amazon SWF
Metrics for CloudWatch using the AWS Management Console を参照してください。
ワークフローのメトリックス
Amazon SWF ワークフローでは、次のメトリックスを使用できます。
メトリックス
説明
DecisionTaskScheduleToStartTime
決定タスクを予定した時刻からワーカーがそれを取得し、開始した
時刻までの時間間隔(ミリ秒)
DecisionTaskStartToCloseTime
決定タスクの開始からクローズまでの時間間隔(ミリ秒)
DecisionTasksCompleted
完了した決定タスクの数。
StartedDecisionTasksTimedOutOnClose
開始したが、クローズ時にタイムアウトした決定タスクの数。
WorkflowStartToCloseTime
ワークフローの開始からクローズまでの時間間隔(ミリ秒)。
WorkflowsCanceled
取り消されたワークフローの数。
WorkflowsCompleted
完了したワークフローの数。
WorkflowsContinuedAsNew
新規として継続したワークフローの数。
WorkflowsFailed
失敗したワークフローの数。
WorkflowsTerminated
終了されたワークフローの数。
WorkflowsTimedOut
何らかの理由でタイムアウトしたワークフローの数。
Amazon SWF ワークフローメトリックスのディメンション
ディメンション
説明
分野
ワークフローが実行中の Amazon SWF ドメイン。
WorkflowTypeName
このワークフロー実行のワークフロータイプの名前。
WorkflowTypeVersion
このワークフロー実行のワークフロータイプのバージョン。
アクティビティのメトリックス
Amazon SWF アクティビティでは、次のメトリックスを使用できます。
メトリックス
説明
ActivityTaskScheduleToCloseTime
アクティビティのスケジュール時刻からクローズ時刻までの時間間
隔(ミリ秒)。
ActivityTaskScheduleToStartTime
アクティビティタスクのスケジュール時刻から開始時刻までの時間
間隔(ミリ秒)。
API Version 2010-08-01
260
Amazon CloudWatch 開発者ガイド
AWS Storage Gateway のディメンションおよびメトリッ
クス
メトリックス
説明
ActivityTaskStartToCloseTime
アクティビティタスクの開始時刻からクローズ時刻までの時間間隔
(ミリ秒)。
ActivityTasksCanceled
取り消されたアクティビティタスクの数。
ActivityTasksCompleted
完了したアクティビティタスクの数。
ActivityTasksFailed
失敗したアクティビティタスクの数。
ScheduledActivityTasksTimedOutOnClose
スケジュールされたが、クローズ時にタイムアウトしたアクティビ
ティタスクの数。
ScheduledActivityTasksTimedOutOnStart
スケジュールされたが、開始時にタイムアウトしたアクティビティ
タスクの数。
StartedActivityTasksTimedOutOn- 開始されたが、クローズ時にタイムアウトしたアクティビティタス
Close
クの数。
StartedActivityTasksTimedOutOn- 開始されたが、ハートビートタイムアウトのためタイムアウトした
Heartbeat
アクティビティタスクの数。
Amazon SWF アクティビティメトリックスのディメンション
ディメンション
説明
分野
アクティビティが実行中の Amazon SWF ドメイン。
ActivityTypeName
アクティビティタイプの名前。
ActivityTypeVersion
アクティビティタイプのバージョン
AWS Storage Gateway のディメンションおよびメ
トリックス
Abstract
Amazon CloudWatch で利用可能な Amazon Storage Gateway のディメンションおよびメトリックスをすべて一覧
表示します。
AWS Storage Gateway は、複数のメトリックスのデータポイントを CloudWatch に送信します。すべ
てのアクティブなキューでは、5 分ごとにメトリックスが CloudWatch に自動送信されます。現在、詳
細モニタリング(1 分)のメトリックスは AWS Storage Gateway では使用できません。AWS Storage
Gateway をモニタリングする方法については、「AWS Storage Gateway ユーザーガイド」の「Monitoring
Your AWS Storage Gateway」を参照してください。
AWS Storage Gateway メトリックス
次のメトリックスは AWS Storage Gateway サービスから入手できます。
次の表では、ご使用のゲートウェイについての情報を入手するのに使用できる AWS Storage Gateway
メトリックスについて説明します。GatewayId または GatewayName ディメンションを各メトリック
API Version 2010-08-01
261
Amazon CloudWatch 開発者ガイド
AWS Storage Gateway メトリックス
スに指定して、ゲートウェイのデータを表示します。これらのメトリックスは 5 分間隔で測定できま
す。
メトリックス
説明
ReadBytes
ゲートウェイにあるすべてのボリュームを対象としたレポートの期間中に
内部設置型のアプリケーションから読み取られた総バイト数。
このメトリックスを使用し、Sum 統計を選択して特定の期間で割ることで
スループットを測定します。このメトリックスを使用し、Samples 統計を
選択して特定の期間で各データポイントを割ることで、オペレーションレー
ト(IOPS)を測定します。
単位: バイト
WriteBytes
ゲートウェイにあるすべてのボリュームを対象としたレポートの期間中に
内部設置型のアプリケーションに書き込まれた総バイト数。
このメトリックスを使用し、Sum 統計を選択して特定の期間で割ることで
スループットを測定します。このメトリックスを使用し、Samples 統計を
選択して特定の期間で各データポイントを割ることで、オペレーションレー
ト(IOPS)を測定します。
単位: バイト
ReadTime
ゲートウェイにあるすべてのボリュームを対象としたレポートの期間中に
内部設置型のアプリケーションからの読み取りにかかった時間(ミリ秒)。
このメトリックスを Average 統計と共に使用して平均のレイテンシーを測
定します。
単位: Milliseconds
WriteTime
ゲートウェイにあるすべてのボリュームを対象としたレポートの期間中に
内部設置型のアプリケーションからの書き込みにかかった時間(ミリ秒)。
このメトリックスを Average 統計と共に使用して平均のレイテンシーを測
定します。
単位: Milliseconds
QueuedWrites
ゲートウェイにあるすべてのボリュームを対象としたレポートの期間の終
わりの時点でサンプリングされた、AWS への書き込みを待機しているバイ
ト数。このバイト数はゲートウェイの作業ストレージに保存されます。
単位: バイト
CloudBytesDownloaded
レポートの期間中に AWS からダウンロードされたゲートウェイの総バイト
数。
このメトリックスを使用し、Sum 統計を選択して特定の期間で割ることで
スループットを測定します。このメトリックスを使用し、Samples 統計を
選択して特定の期間で各データポイントを割ることで、オペレーションレー
ト(IOPS)を測定します。
単位: バイト
API Version 2010-08-01
262
Amazon CloudWatch 開発者ガイド
AWS Storage Gateway メトリックス
メトリックス
説明
CloudBytesUploaded レポートの期間中に AWS にアップロードされたゲートウェイの総バイト
数。
このメトリックスを使用し、Sum 統計を選択して特定の期間で割ることで
スループットを測定します。このメトリックスを使用し、Samples 統計を
選択して特定の期間で各データポイントを割ることで、オペレーションレー
ト(IOPS)を測定します。
単位: バイト
CloudDownloadLatency
レポートの期間中に AWS からデータを読み取るのにかかった時間(ミリ
秒)。
このメトリックスを Average 統計と共に使用して平均のレイテンシーを測
定します。
単位: Milliseconds
WorkingStoragePer- ゲートウェイの作業ストレージの使用率。サンプリングは、レポート期間
の最後に行われます。
centUsed
単位: パーセント
WorkingStorageUsed ゲートウェイの作業ストレージで使用されている総バイト数。サンプリン
グは、レポート期間の最後に行われます。
単位: バイト
WorkingStorageFree ゲートウェイの作業ストレージの未使用領域の量。サンプリングは、レポー
ト期間の最後に行われます。
単位: バイト
次の表で、ストレージボリュームについての情報の取得に使用できる AWS Storage Gateway メトリッ
クスについて説明します。各メトリックスに VolumeId ディメンションを指定して、ストレージボ
リュームのデータを表示します。
メトリックス
説明
ReadBytes
レポートの期間中に内部設置型のアプリケーションから読み取られた総バイ
ト数。
このメトリックスを使用し、Sum 統計を選択して特定の期間で割ることでス
ループットを測定します。このメトリックスを使用し、Samples 統計を選択
して特定の期間で各データポイントを割ることで、オペレーションレート
(IOPS)を測定します。
単位: バイト
API Version 2010-08-01
263
Amazon CloudWatch 開発者ガイド
AWS Storage Gateway メトリックス
メトリックス
説明
WriteBytes
レポートの期間中に内部設置型のアプリケーションに書き込まれた総バイト
数。
このメトリックスを使用し、Sum 統計を選択して特定の期間で割ることでス
ループットを測定します。このメトリックスを使用し、Samples 統計を選択
して特定の期間で各データポイントを割ることで、オペレーションレート
(IOPS)を測定します。
単位: バイト
ReadTime
レポートの期間中に内部設置型のアプリケーションからの読み取りにかかっ
た時間(ミリ秒)。
このメトリックスを Average 統計と共に使用して平均のレイテンシーを測定
します。
単位: Milliseconds
WriteTime
レポートの期間中に内部設置型のアプリケーションからの書き込みにかかっ
た時間(ミリ秒)。
このメトリックスを Average 統計と共に使用して平均のレイテンシーを測定
します。
単位: Milliseconds
QueuedWrites
レポートの期間の終わりの時点でサンプリングされた、AWS への書き込みを
待機しているバイト数。
単位: バイト
CacheHitPercent
キャッシュから提供されたアプリケーション読み取りの割合。このメトリッ
クスは、ゲートウェイキャッシュ型ボリュームの設定にのみ適用されます。
サンプリングは、レポート期間の最後に行われます。
単位: パーセントです。
CachePercentUsed
ゲートウェイキャッシュストレージの使用率。このメトリックスは、ゲート
ウェイキャッシュ型ボリュームの設定にのみ適用されます。サンプリングは、
レポート期間の最後に行われます。
単位: パーセント
CachePercentDirty AWS に保管されていないゲートウェイキャッシュの割合。このメトリックス
は、ゲートウェイキャッシュ型ボリュームの設定にのみ適用されます。サン
プリングは、レポート期間の最後に行われます。
単位: パーセント
UploadBufferFree
ゲートウェイアップロードバッファの未使用領域の量。サンプリングは、レ
ポート期間の最後に行われます。
単位: バイト
UploadBufferPercentUsed
ゲートウェイアップロードバッファの使用率。サンプリングは、レポート期
間の最後に行われます。
単位: パーセント
API Version 2010-08-01
264
Amazon CloudWatch 開発者ガイド
AWS Storage Gateway メトリックスのディメンション
メトリックス
説明
UploadBufferUsed
ゲートウェイアップロードバッファで使用されている総バイト数。サンプリ
ングは、レポート期間の最後に行われます。
単位: バイト
TotalCacheSize
キャッシュの総バイト数。このメトリックスは、ゲートウェイキャッシュ型
ボリュームの設定にのみ適用されます。サンプリングは、レポート期間の最
後に行われます。
単位: バイト
WorkingStoragePer- ゲートウェイアップロードバッファの使用率。サンプリングは、レポート期
間の最後に行われます。
centageUsed
Note
作業ストレージは、ゲートウェイ保管型ボリュームの設定にのみ適用
されます。アップロードバッファは、ゲートウェイ保管型とゲート
ウェイキャッシュ型の両方のボリュームの設定に適用されます。両方
のタイプのゲートウェイの設定を使用する場合は、対応するアップ
ロードバッファメトリックス UploadBufferPercentUsed のみを使
用する方が、より便利なことがあります。
単位: パーセント
AWS Storage Gateway メトリックスのディメンショ
ン
AWS Storage Gateway サービス用の Amazon CloudWatch 名前空間は AWS/StorageGateway です。
データは自動的に 5 分間無料で取得できます。
ディメンション
説明
GatewayId、GatewayName
このディメンションを指定すると、リクエストしたデータがフィル
タリングされて、ゲートウェイ固有のメトリックスのものだけにな
ります。対象となるゲートウェイは、GatewayId または GatewayName で特定できます。ただし、メトリックスの表示に関連した時
間範囲でゲートウェイの名前が変更された場合は、GatewayId を
使用します。
ゲートウェイのスループットとレイテンシーデータは、ゲートウェ
イの全ボリュームによって変動します。ゲートウェイメトリックス
の詳細については Measuring Performance Between Your Gateway
and AWS を参照してください。
VolumeId
このディメンションを指定すると、リクエストしたデータがフィル
タリングされて、ボリュームに固有のメトリックスのものだけにな
ります。VolumeId によって、使用するストレージの量を特定しま
す。ボリュームメトリックスの使用については Measuring Performance Between Your Application and Gateway を参照してください。
API Version 2010-08-01
265
Amazon CloudWatch 開発者ガイド
Amazon WorkSpaces のディメンションおよびメトリック
ス
Amazon WorkSpaces のディメンションおよびメ
トリックス
Abstract
Amazon CloudWatch で利用可能な Amazon WorkSpaces のディメンションおよびメトリックスをすべて一覧表示
します。
Amazon WorkSpaces は、複数のメトリックスのデータデータポイントを 5 分ごと(5 分のメトリック
ス)に CloudWatch に送信します。現在、詳細モニタリング(1 分)のメトリックスは Amazon
WorkSpaces では使用できません。Amazon WorkSpaces をモニタリングする方法の詳細については、
Amazon WorkSpaces Administration Guide の「Amazon WorkSpaces のモニタリング」を参照してく
ださい。
Amazon WorkSpaces メトリックス
次のメトリックスは Amazon WorkSpaces から入手できます。
Amazon WorkSpaces CloudWatch のメトリックス
メトリックス
1
Available
1
説明
ディメンション
利用可能な統計情
報
正常な状態を返し
た WorkSpace の
数。
DirectoryId
Average、Sum、 カウント
Maximum、Minimum、Data
Samples
WorkspaceId
単位
Unhealthy
正常でない状態を DirectoryId
返した WorkSpace
WorkspaceId
の数。
Average、Sum、 カウント
Maximum、Minimum、Data
Samples
ConnectionAt2
tempt
接続試行の数。
Average、Sum、 カウント
Maximum、Minimum、Data
Samples
DirectoryId
WorkspaceId
ConnectionSuc- 成功した接続の
2
数。
cess
DirectoryId
WorkspaceId
ConnectionFail- 失敗した接続の
2
数。
ure
DirectoryId
WorkspaceId
SessionLaunch- WorkSpaces セッ
2
ションを開始する
Time
ためにかかる時
間。
DirectoryID
WorkspaceID
API Version 2010-08-01
266
Average、Sum、 カウント
Maximum、Minimum、Data
Samples
Average、Sum、 カウント
Maximum、Minimum、Data
Samples
Average、Sum、 秒(時間)
Maximum、Minimum、Data
Samples
Amazon CloudWatch 開発者ガイド
Amazon WorkSpaces メトリックスのディメンション
メトリックス
説明
ディメンション
利用可能な統計情
報
InSession2
Latency
WorkSpaces クラ
イアントと WorkSpace 間のラウン
ドトリップ時間。
DirectoryID
Average、Sum、 ミリ秒(時間)
Maximum、Minimum、Data
Samples
SessionDiscon- ユーザーが開始し
2
て失敗した接続を
nect
含む、閉じられた
接続の数。
DirectoryID
WorkspaceID
WorkspaceID
単位
Average、Sum、 カウント
Maximum、Minimum、Data
Samples
1
Amazon WorkSpaces は定期的にステータスリクエストを WorkSpace に送信します。WorkSpace
は、これらのリクエストに応答すると Available とマークされ、リクエストに応答できないと
Unhealthy とマークされます。これらのメトリックスは WorkSpace の粒度で利用でき、組織のすべ
ての WorkSpace で集計されます。
2
Amazon WorkSpaces は、各 WorkSpace に対して行われた接続のメトリックスを記録します。これ
らのメトリックスは、ユーザーが WorkSpace クライアント経由で正常に認証され、クライアントが
セッションを開始した後で出力されます。メトリックスは WorkSpace の粒度で利用でき、ディレクト
リのすべての WorkSpace で集計されます。
Amazon WorkSpaces メトリックスのディメンショ
ン
Amazon WorkSpaces メトリックスは、次のディメンションで使用できます。
Amazon WorkSpaces CloudWatch ディメンション
ディメンション
説明
DirectoryId
指定したディレクトリの WorkSpace で受け取る
データを制限します。DirectoryId 値の形式は
d-XXXXXXXXXX です。
WorkspaceId
指定した WorkSpace で受け取るデータを制限し
ます。WorkspaceId 値の形式は ws-XXXXXXXXXX
です。
API Version 2010-08-01
267
Amazon CloudWatch 開発者ガイド
Amazon CloudWatch のエンドポイント
API リクエストの実行
Abstract
HTTP または HTTPS のクエリリクエストを使用して、CloudWatch の AWS クエリ API にアクセスします。
Amazon CloudWatch で使用するクエリリクエストは、GET、POST などの HTTP 動詞や、Action、
Operation などのクエリパラメータを使用する HTTP リクエストまたは HTTPS リクエストです。この
文書では Action を使用しますが、Operation もサポートされており、他の AWS クエリ API と下位互換
性があります。
Topics
• Amazon CloudWatch のエンドポイント (p. 268)
• クエリパラメータ (p. 268)
• RequestId (p. 269)
• クエリ API 認証 (p. 269)
• 署名バージョン 2 を用いたクエリ API の例 (p. 271)
• 署名バージョン 2 を用いたクエリ API のエラーメッセージ (p. 274)
• 利用可能なライブラリ (p. 275)
Amazon CloudWatch のエンドポイント
CloudWatch のリージョンおよびエンドポイントについては、「Amazon Web Services General
Reference」の「Regions and Endpoints」を参照してください。
クエリパラメータ
各クエリリクエストに、アクションの認証と選択を処理するための共通パラメータがいくつか含まれて
いる必要があります。詳細は、「Amazon CloudWatch API リファレンス」の「Common Query
Parameters」を参照してください。
Note
一部の API オペレーションはパラメータのリストを取ります。これらのリストは
param.member.n. という表記法を使用して指定されます。値 n には 1 以上の整数を指定しま
API Version 2010-08-01
268
Amazon CloudWatch 開発者ガイド
RequestId
す。すべてのパラメータリストはこの表記法に従う必要があります。パラメータが 1 つしか含
まれないリストも同様です。たとえば、あるクエリパラメータのリストは以下のようになりま
す。
&attribute.member.1=this
&attribute.member.2=that
RequestId
アマゾン ウェブ サービス(AWS)からの各応答には ResponseMetadata があり、これには RequestId
という文字列要素が含まれています。これは、AWS が情報を追跡するために割り当てる一意の識別子
です。RequestId は各応答の一部に含まれていますが、API ドキュメントを読みやすくするため、ま
た冗長を減らすために、個々の API ドキュメントのページにはリストされません。
クエリ API 認証
クエリリクエストは、HTTP または HTTPS 経由で送信できます。使用しているプロトコルにかかわら
ず、すべてのクエリリクエストに署名を含める必要があります。このセクションでは、署名を作成する
方法について説明します。次に説明する方法は、署名バージョン 2 と呼ばれます。署名を作成し、含め
る詳細については、「AWS General Reference」の「Signing AWS API Requests」を参照してくださ
い。
署名を作成するには
1.
本手順で後に必要となる、正規化されたクエリ文字列を作成します。
a.
UTF-8 クエリ文字列コンポーネントを、パラメータ名のマシンのネイティブのバイト順にソー
トします。
パラメータは GET URI または POST ボディから取得される場合があります(Content-Type
が application/x-www-form-urlencoded の場合)。
b.
パラメータ名と値を、以下のルールに従ってURLエンコードします。
• RFC3986で規定された非予約文字はURLエンコードしてはいけません。
非予約文字とは、A-Z, a-z, 0-9, ハイフン(-)、アンダーバー(_)、ピリオド(.)、およ
びチルダ(~)です。
• 他のすべての文字は %XY の形式でパーセントエンコードします。X と Y は、16 進数文字
(0~9 と英大文字 A~F)です。
• 拡張UTF-8文字については、%XY%ZA…のようにパーセントエンコードします。
• スペース文字は、パーセントエンコードして%20と表記します(多くのエンコーディングで
行われる、+は付加しないよう気をつけてください)。
Note
現在、すべての AWS サービスのパラメータの名称は非予約文字を使用しているので、
これらをエンコードする必要はありません。しかし、将来必要な場合に備えて、予約
文字を含むパラメータを処理できるコードを含めていただいたほうがよいかもしれま
せん。
API Version 2010-08-01
269
Amazon CloudWatch 開発者ガイド
クエリ API 認証
c.
d.
2.
パラメータの値が空値の場合でも、エンコードされるパラメータ名とエンコードされる値の間
に等号(=)(ASCII コード 61)を入れます。
名前と値のペアはアンパサンド(&)(ASCII コード 38)で区切ります。
署名用の文字列を以下の擬似文法に基づいて作成します("\n" は ASCII コードの改行文字を示し
ます)。
StringToSign = HTTPVerb + "\n" +
ValueOfHostHeaderInLowercase + "\n" +
HTTPRequestURI + "\n" +
CanonicalizedQueryString <from the preceding step>
HTTPRequestURI 要素はURIのHTTP絶対パス要素ですが、クエリ文字列は含みません。
HTTPRequestURI が空値の場合は、スラッシュ(/)を使用してください。
3.
4.
5.
作成した文字列を使用して RFC 2104 準拠の HMAC を計算します。自分のシークレットアクセス
キーをキーとして、SHA256 または SHA1 をハッシュアルゴリズムとして使用します。
詳細については、http://www.ietf.org/rfc/rfc2104.txt
を参照してください。
結果の値を base64 に変換します。
結果として得られた値をリクエスト内のSignatureパラメータに含めて使用します。
Important
最終的にリクエストに含める署名は、RFC 3986 にて規定された方法で URL エンコードされて
いる必要があります(詳細については、http://www.ietf.org/rfc/rfc3986.txt を参照してくださ
い)。最終的なリクエストがツールキットによって URL エンコードされる場合は、必須であ
る署名の URL エンコーディングもツールキットによって処理されます。もしご利用のツール
キットが最終的なリクエストの URL エンコード処理を行わない場合は、リクエストに署名を
含めて送信する前に、必ず URL エンコードを行うようにしてください。最も重要なのは、署
名の URL エンコードは1度だけ行うということです。よくある失敗は、署名を作成するときに
手動で URL エンコード処理を行った後、リクエスト全体を再度ツールキットで URL エンコー
ド処理してしまうというものです。
API Version 2010-08-01
270
Amazon CloudWatch 開発者ガイド
署名バージョン 2 を用いたクエリ API の例
署名バージョン 2 を用いたクエリ API の例
Example ListMetrics API リクエスト
この例では、Amazon CloudWatch の ListMetrics アクションを使用します。
http://monitoring.amazonaws.com/?SignatureVersion=2
&Action=ListMetrics
&Version=2010-08-01
&AWSAccessKeyId=<Your AWS Access Key Id>
&SignatureVersion=2
&SignatureMethod=HmacSHA256
&Timestamp=2010-11-17T05%3A13%3A00.000Z
以下は、署名対象の文字列です。
GET\n
monitoring.amazonaws.com\n
/\n
AWSAccessKeyId=<Your AWS Access Key Id>
&Action=ListMetrics
&SignatureMethod=HmacSHA256
&SignatureVersion=2
&Timestamp=2010-11-17T05%3A13%3A00.000Z
&Version=2010-08-01
以下は、署名リクエストです。
http://monitoring.amazonaws.com/?Action=ListMetrics
&SignatureVersion=2
&SignatureMethod=HmacSHA256
&Timestamp=2010-11-17T05%3A13%3A00.000Z
&Signature=<URLEncode(Base64Encode(Signature))>
&Version=2010-08-01
&AWSAccessKeyId=<Your AWS Access Key Id>
API Version 2010-08-01
271
Amazon CloudWatch 開発者ガイド
署名バージョン 2 を用いたクエリ API の例
Example NextToken の値を用いた ListMetrics API リクエスト
この例では、Amazon CloudWatch の ListMetrics アクションと NextToken の値を使用して 500 以上の
メトリックスを取得します。
1.
署名対象のリクエスト文字列を以下の擬似文法に基づいて作成します("\n" は ASCII コードの改
行を示します)。
StringToSign = HTTPVerb + "\n" +
ValueOfHostHeaderInLowercase + "\n" +
HTTPRequestURI + "\n" +
CanonicalizedQueryString <from the preceding step>
HTTPRequestURI コンポーネントは、クエリ文字列までの(文字列自体は含まれない) URI の
HTTP 絶対パスコンポーネントです。HTTPRequestURI が空値の場合は、スラッシュ(/)を使用
してください。
2.
以下の例のように署名対象のリクエスト文字列を準備します。
GET\n
monitoring.amazonaws.com\n
/\n
AWSAccessKeyId=<Your AWS Access Key Id>
&Action=ListMetrics
&SignatureMethod=HmacSHA256
&SignatureVersion=2
&Timestamp=2010-11-17T05%3A13%3A00.000Z
&Version=2010-08-01
例では以下のように指定されています。
Action: 実行するアクションを指定します(例: ListMetrics)。
AWSAccessKeyId: AWS アカウントの AccessKeyId を指定します(<Your AWS Access Key ID>
を実際の AWSAccessKeyId に置き換えます)。
SignatureVersion: 署名のバージョンを指定します(例: 2)。
Timestamp2012-09-27T17:06:23.000Z: リクエストのタイムスタンプを指定します(例:
09/27/2012、17:06:23)。
Version2010-08-01: ListMetrics API のバージョンを指定します(例: 2010-08-01 の最新リリー
ス)。
3.
前の手順で準備した文字列でリクエスト URL に署名します。以下の例は、署名済みリクエスト
URL を示しています。
http://monitoring.amazonaws.com?SignatureVersion=2
&Action=ListMetrics
&Version=2010-08-01
&Timestamp=2012-09-27T17%3A14%3A01.000Z
&AWSAccessKeyId=<Your AWS Access Key ID>
&Signature=iE68300Pbl%2BDsKM5mFiOhHWEXAMPLE
例では以下のように指定されています。
Action: 実行するアクションを指定します(例: ListMetrics)。
API Version 2010-08-01
272
Amazon CloudWatch 開発者ガイド
署名バージョン 2 を用いたクエリ API の例
Version=2010-08-01: ListMetrics API のバージョンを指定します(例: 2010-08-01 の最新リリー
ス)。
Timestamp=2012-09-27T17:06:23.000Z: リクエストのタイムスタンプを指定します(例:
09/27/2012、17:06:23)。
AWSAccessKeyId: AWS アカウントの AccessKeyId を指定します(<Your AWS Access Key ID>
を実際の AWSAccessKeyId に置き換えます)。
Signature: リクエストに署名する署名を指定します(例:
<URLEncode(Base64Encode(Signature))>=iE68300Pbl%2BDsKM5mFiOhHWEXAMPLE)。
4.
署名済みリクエスト URL をウェブブラウザにコピーし、Enter を押してリクエストを実行します。
次のような結果が表示されます。
<ListMetricsResponse>
<ListMetricsResult>
<Metrics>
<member>
<Dimensions>
<member>
<Name>InstanceId</Name>
<Value>i-8dea01f0</Value>
</member>
</Dimensions>
<MetricName>CPUUtilization</MetricName>
<Namespace>AWS/EC2<Namespace>
</member>
<member>
<Dimensions>
<member>
<Name>InstanceId</Name>
<Value>i-7dee09t3</Value>
</member>
</Dimensions>
<MetricName>CPUUtilization</MetricName>
<Namespace>AWS/EC2<Namespace>
<member>
</member>
</Metrics>
<NextToken>NNNTTT</NextToken>
</ListMetricsResult>
<ResponseMetadata>
<RequestId>8f95da07-08c8-11e2-9cdd-4d93ea583888</RequestId>
</ResponseMetadata>
</ListMetricsResponse>
5.
6.
7.
手順 4 の出力から、NextToken の値を保存します。この例では NNNTTT ですが、通常は非常に長
い文字列です。
署名対象のリクエスト文字列を準備し、NextToken=NNNTTT の値に含めます。
手順 6 で準備した文字列でリクエスト URL に署名します。以下は、署名済みリクエスト URL の
例です。NextToken=NNNTTT の値があることを除けば、手順 3 の署名済みリクエスト URL と類
似しています。
http://monitoring.amazonaws.com?SignatureVersion=2
&Action=ListMetrics
&Version=2010-08-01
API Version 2010-08-01
273
Amazon CloudWatch 開発者ガイド
署名バージョン 2 を用いたクエリ API のエラーメッセージ
&NextToken=NNNTTT
&Timestamp=2012-09-27T17%3A45%3A14.000Z
&AWSAccessKeyId=<Your AWS Access Key ID>
&Signature=iE68300Pbl%2BDsKM5mFiOhHWEXAMPLE
8.
次の 500 のメトリックスを取得するには、署名済みリクエスト URL をお使いのウェブブラウザに
コピーし、Enter を押します。すべてのメトリックスを取得するまで、同じパラメータと新しい
NextToken でリクエストを繰り返すことができます。
署名バージョン 2 を用いたクエリ API のエラーメッ
セージ
Example 誤った AWS シークレットアクセスキーを使用して署名を計算した場合のエラーメッ
セージ
<ErrorResponse>
<Error>
<Type>Sender</Type>
<Code>SignatureDoesNotMatch</Code>
<Message>
The request signature we calculated does not match the signature you
provided. Check your AWS Secret Access Key and signing method. Consult
the service
documentation for details.
</Message>
</Error>
<RequestId>a9c1a06e-0d80-11e2-ac80-9646d110ca61<RequestId>
</ErrorResponse>
Example 誤った AWS AccessKeyID を使用した場合のエラーメッセージ
<ErrorResponse>
<Error>
<Type>Sender</Type>
<Code>InvalidClientTokenId</Code>
<Message>
The security token included in the request is invalid
</Message>
</Error>
<RequestId>5134a3b8-0d82-11e2-9b0a-db3eb46b3dbd</RequestId>
</ErrorResponse>
API Version 2010-08-01
274
Amazon CloudWatch 開発者ガイド
利用可能なライブラリ
Example 不正なパラメータを使用した場合のエラーメッセージ
以下の例は、MetricName パラメータ「TestMetric」を用いてリクエストを行う方法を示しています。
署名済み URL は次のように表示されます。
http://monitoring.amazonaws.com?SignatureVersion=2
&Action=ListMetrics
&Version=2010-08-01
&MetricName=TestMetric
&Timestamp=2012-09-27T17%3A14%3A01.000Z
&AWSAccessKeyId=<Your AWS Access Key ID>
&Signature=iE68300Pbl%2BDsKM5mFiOhHWEXAMPLE
NextToken でさらにメトリックスを取得する場合、前回のリクエストと同じパラメータを使用する必要
があります。(NextToken が正しいという前提で)誤ったパラメータを使用した場合、またはパラメー
タが多かったり少なかったりする場合、次のエラーが表示されます。
<ErrorResponse>
<Error>
<Type>Sender</Type>
<Code>InvalidParameterValue</Code>
<Message>Invalid nextToken</Message>
</Error>
<RequestId>cb1c4191-0e5d-11e2-9c15-6f306828daaa<RequestId>
</ErrorResponse>
利用可能なライブラリ
コマンドラインツールやクエリ API ではなく言語固有の API を使用してアプリケーションを構築する
ソフトウェア開発者のために、AWS は、ライブラリ、サンプルコード、チュートリアル、およびその
他のリソースを提供しています。こうしたライブラリには、リクエスト認証、リクエストの再実行、エ
ラー処理など、(API には含まれない)基本的な機能が用意されていて、簡単に開始できるようになっ
ています。ライブラリとリソースは、次の言語とプラットフォームで利用可能です。
•
•
•
•
Android
iOS
Java
PHP
• Python
• Ruby
• Windows および .NET
すべての言語のライブラリとサンプルコードについては、「サンプルコードとライブラリ」を参照して
ください。
API Version 2010-08-01
275
Amazon CloudWatch 開発者ガイド
ドキュメント履歴
Abstract
Amazon CloudWatch 開発者ガイドの改訂日、関連リリース、重要な変更を確認することができます。
次の表に Amazon CloudWatch 開発者ガイド の重要な変更点がまとめられています。本ドキュメント
は、CloudWatch の 2010-08-01 リリースに関連するものです。本ガイドの最終更新日は、2015 年 4 月
30 日です。
変更点
説明
リリース日
Amazon WorkSpaces のメトリッ
クスとディメン
ションを追加
Amazon WorkSpaces のメトリックスとディメンショ 2015 年 4 月 30 日
ンが追加されました。詳細については、「Amazon
WorkSpaces のディメンションおよびメトリック
ス (p. 266)」を参照してください。
Amazon Machine
Learning のメト
リックスとディメ
ンションを追加
Amazon Machine Learning のメトリックスとディメ
ンションが追加されました。詳細については、
「Amazon Machine Learning のディメンションおよ
びメトリックス (p. 247)」を参照してください。
Amazon EC2 イン
スタンス復旧ア
ラームアクション
のサポート
アラームアクションが更新され、新しい EC2 インス 2015 年 3 月 12 日
タンス復旧アクションが含まれるようになりました。
詳細については、「インスタンスを停止、終了、ま
たは復旧するアラームを作成する (p. 98)」を参照し
てください。
Amazon CloudFront および
Amazon CloudSearch のメトリッ
クスとディメン
ションを追加
Amazon CloudFront および Amazon CloudSearch の 2015 年 3 月 6 日
メトリックスとディメンションが追加されました。
詳細については、「Amazon CloudFront のディメン
ションおよびメトリックス (p. 217)」および「Amazon
CloudSearch のディメンションおよびメトリック
ス (p. 218)」を参照してください。
Amazon CloudWatch Logs で
AWS CloudTrail が
記録したイベント
のサポートを追加
CloudWatch にアラームを作成して、CloudTrail が
キャプチャした特定 API アクティビティの通知を受
け取り、通知をトラブルシューティングの実行に使
用できます。詳細については、「ログファイルのモ
ニタリング (p. 134)」を参照してください。
API Version 2010-08-01
276
2015 年 4 月 9 日
2014 年 11 月 10 日
Amazon CloudWatch 開発者ガイド
変更点
説明
リリース日
Amazon CloudWatch Logs のサ
ポートの追加
Amazon CloudWatch Logs を使用して、Amazon
2014 年 7 月 10 日
Elastic Compute Cloud (Amazon EC2) インスタンス
またはその他のソースのシステム、アプリケーショ
ン、およびカスタムログファイルの監視、保存、ア
クセスができます。その後、Amazon CloudWatch コ
ンソール、AWS CLI の CloudWatch Logs コマンド、
または CloudWatch Logs SDK を使用して、CloudWatch Logs から関連ログデータを取得できます。詳
細については、「ログファイルのモニタリン
グ (p. 134)」を参照してください。
「Amazon Simple
Workflow Service
のメトリックスお
よびディメンショ
ン」を追加
「Amazon Simple Workflow Service のメトリックス 2014 年 5 月 9 日
およびディメンション」を追加しました。詳細につ
いては、「Amazon SWF のディメンションおよびメ
トリックス (p. 259)」を参照してください。
AWS CloudTrail の Amazon CloudWatch のアクティビティをログに記録 2014 年 4 月 30 日
サポート追加に関 するために AWS CloudTrail を使用する方法について
するガイドを更新 説明する新しいトピックを追加しました。詳細につ
いては、「AWS CloudTrail での Amazon CloudWatch
API 呼び出しのログ作成 (p. 181)」を参照してくださ
い。
新しい AWS コマ
ンドラインイン
ターフェイス
(CLI)を用いるた
めに、ガイドが更
新されました
AWS CLI は複数のサービス間で用いることができる 2014 年 2 月 21 日
CLI であり、簡潔なインストール、統合された設定、
整合性のあるコマンドライン構文が特長です。AWS
CLI は Linux/Unix、Windows、および Mac でサポー
トされます。このガイドに示す CLI の例は、新しい
AWS CLI を用いることができるように更新されまし
た。
新しい AWS CLI をインストールして設定する方法に
ついては、『AWS Command Line Interface ユーザー
ガイド』の「Getting Set Up with the AWS Command
Line Interface」を参照してください。
新しい Amazon
CloudWatch コン
ソールに合わせて
ガイドを更新
新しくなった Amazon CloudWatch コンソールの内
容を含めるためトピックが更新されました。
Amazon CloudWatch 開発者ガイ
ドを改訂
入門ガイド、「Getting Setup」セクション、最新の 2013 年 9 月 6 日
コマンドラインインターフェイスリファレンス、更
新/追加されたメトリックスとアラームの作業手順を
含めるように開発者ガイドを改訂し、構成を変更し
ました。
Amazon Redshift
および AWS
OpsWorks のメト
リックスとディメ
ンションを追加
Amazon Redshift および AWS OpsWorks のメトリッ 2013 年 7 月 16 日
クスとディメンションが追加されました。詳細につ
いては、Amazon Redshift のディメンションおよび
メトリックス (p. 250) および AWS OpsWorks のディ
メンションおよびメトリックス (p. 248) を参照してく
ださい。
API Version 2010-08-01
277
2013 年 10 月 29 日
Amazon CloudWatch 開発者ガイド
変更点
説明
リリース日
Amazon Route 53
のメトリックスと
ディメンションを
追加
Amazon Route 53 のメトリックスとディメンション 2013 年 6 月 26 日
が追加されました。詳細については、Amazon Route
53 のディメンションおよびメトリックス (p. 256) を
参照してください。
Linux 用の Amazon
CloudWatch モニ
タリングスクリプ
トを更新
AWS Identity and Access Management (IAM)ロー 2013 年 2 月 22 日
ルをサポートするようになった Linux 向けモニタリ
ングスクリプトの最新情報が追加されました。Auto
Scaling によりレポートされたメトリックスや集約さ
れた CloudWatch メトリックスのオプションを使用
できるようになりました。詳細については、Amazon
CloudWatch Monitoring Scripts for Linux (p. 188) を参
照してください。
新機能: Amazon
CloudWatch ア
ラームアクション
ドキュメント「Amazon CloudWatch アラームアク
2013 年 1 月 8 日
ション」に新しいセクションが追加されました。
Amazon Elastic Compute Cloud インスタンスの停止
または終了に参照できます。詳細については、イン
スタンスを停止、終了、または復旧するアラームを
作成する (p. 98) を参照してください。
EBS メトリックス プロビジョニングされた IOPS ボリュームの 2 つの 2012 年 11 月 20 日
を更新
新しいメトリックスを含むように EBS メトリックス
が更新されました。詳細については、Amazon EBS
のディメンションおよびメトリックス (p. 232) を参照
してください。
新しいスクリプト
Amazon CloudWatch Monitoring Scripts for Windows 2012 年 7 月 19 日
を使用して Amazon CloudWatch カスタムメトリッ
クスの生成と使用ができるようになりました。詳細
については、Amazon CloudWatch Monitoring Scripts
for Windows (p. 195) を参照してください。
新しい請求アラー
ト
Amazon CloudWatch メトリックスを用いて AWS の 2012 年 5 月 10 日
変化をモニタリングするとともに、アラームを作成
して指定されたしきい値を超えた場合に通知できる
ようになりました。詳細については、Amazon
CloudWatch で予想請求額をモニタリングする (p. 124)
を参照してください。
新しいスクリプト
Amazon CloudWatch Monitoring Scripts for Linux を
使用して Amazon CloudWatch カスタムメトリック
スの生成と使用ができるようになりました。詳細に
ついては、Amazon CloudWatch Monitoring Scripts
for Linux (p. 188) を参照してください。
新しいメトリック
ス
さまざまな HTTP 応答コードをカウントできる 6 つ 2011 年 10 月 19 日
の新しい Elastic Load Balancing メトリックスが利用
できるようになりました。詳細については、Elastic
Load Balancing のディメンションおよびメトリック
ス (p. 238) を参照してください。
新機能
Amazon Elastic MapReduce からメトリックスにア 2011 年 30 月 6 日
クセスできるようになりました。詳細については、
the section called “Amazon Elastic MapReduce のディ
メンションおよびメトリックス” (p. 241) を参照して
ください。
API Version 2010-08-01
278
2012 年 2 月 24 日
Amazon CloudWatch 開発者ガイド
変更点
説明
リリース日
新機能
Amazon Simple Notification Service および Amazon 2011 年 7 月 14 日
Simple Queue Service からメトリックスにアクセス
できるようになりました。詳細については、the section called “Amazon Simple Notification Service のディ
メンションおよびメトリックス” (p. 256) および the
section called “Amazon SQS のディメンションおよ
びメトリックス” (p. 258) を参照してください。
ガイドの構成変更
「ユーザーシナリオ」セクション全体を含め、セク
ションの名前変更、結合、移動を行いました。
2011 年 7 月 01 日
• 「CloudWatch Support for AWS Products」が
「Amazon CloudWatch の名前空間、ディメンショ
ン、メトリックスのリファレンス (p. 211)」になり
ました。
• 「List Available Metrics」が「the section called “利
用可能なメトリックスを表示する” (p. 30)」になり
ました。
• 「Get Statistics on a Metric」が「the section called
“メトリックスの統計を取得する” (p. 38)」になり
ました。
• 「Create an Alarm that Sends Email」が「Amazon
CloudWatch アラームの作成 (p. 80)」になりまし
た。
新規セクション
AWS Identity and Access Management (IAM)の使 2011 年 7 月 6 日
用方法を説明するセクションを追加しました。詳細
については、AWS アカウントへのユーザーアクセス
のコントロール (p. 206) を参照してください。
新機能
PutMetricData API を使用したカスタムメトリック 2011 年 5 月 10 日
スのパブリッシュに関する情報を追加しました。詳
細については、「the section called “カスタムメト
リックスをパブリッシュする” (p. 77)」を参照する
か、Amazon CloudWatch 入門ガイド にアクセスし
てください。
コンテンツの更新
Amazon CloudWatch によるアラーム履歴の保持期間 2011 年 4 月 07 日
が 6 週間から 2 週間になりました。この変更により、
アラームの保持期間がメトリックスデータの保持期
間と一致するようになりました。
新しいリンク
このサービスのエンドポイント情報が、Amazon Web 2011 年 3 月 2 日
Services General Reference に移動しました。詳細
については、「Amazon Web Services General Reference」の「Regions and Endpoints」を参照してくだ
さい。
コンテンツの更新
AWS マネジメントコンソールを使用した CloudWatch 2011 年 2 月 11 日
の管理に関する情報を追加しました。
API Version 2010-08-01
279
Amazon CloudWatch 開発者ガイド
変更点
説明
リリース日
コンテンツの更新
アラームと Auto Scaling の簡単な説明を追加しまし
た。アラームは、しきい値を最初に超過したときだ
けでなく、超過している間ずっと Auto Scaling ポリ
シー通知を呼び出し続ける点が、具体的に説明され
ています。詳細については、アラーム (p. 9) を参照
してください。
2011 年 1 月 19 日
コンテンツの更新
Elastic Load Balancing RequestCount メトリックの 2011 年 1 月 18 日
有効な統計のリストから Minimum と Maximum を削
除しました。RequestCount で有効な統計は Sum の
みです。全 Elastic Load Balancing メトリックスの一
覧については Elastic Load Balancing のディメンショ
ンおよびメトリックス (p. 238) を参照してください。
新機能
メトリックスがしきい値を超えたときに Amazon
Simple Notification Service 通知または Auto Scaling
通知を送信する機能を追加しました。詳細について
は、アラーム (p. 9) を参照してください。
新機能
多数の CloudWatch アクションに MaxRecords パラ 2010 年 12 月 02 日
メータと NextToken パラメータが含められ、表示す
る結果ページを制御できるようになりました。
新機能
このサービスが AWS Identity and Access Manage- 2010 年 12 月 02 日
ment (IAM)と連動するようになりました。詳細に
ついては、http://aws.amazon.com/iam および IAM を
使用する にアクセスしてください。
API Version 2010-08-01
280
2010 年 12 月 02 日
Amazon CloudWatch 開発者ガイド
AWS の用語集
Abstract
最新の AWS の主要な用語と用法を示しています。
最新の AWS の用語については、『AWS General Reference』の「AWS の用語集」を参照してくださ
い。
API Version 2010-08-01
281