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
© Copyright 2024 ExpyDoc