Amazon Simple Storage Service
開発者ガイド (API バージョン 2006-03-01)

Amazon CloudWatch を使用したメトリクスのモニタリング

Amazon CloudWatch の Amazon S3 メトリクスは、Amazon S3 を使用するアプリケーションのパフォーマンスを理解して向上させるのに役立つことがあります。Amazon S3 で CloudWatch を使用するには 2 つの方法があります。

  • バケットの日次のストレージメトリクス ‐ CloudWatch を使用して bucket ストレージをモニタリングすることで、Amazon S3 からストレージデータを収集し、読み取り可能な日次のメトリクスに加工することができます。これらの Amazon S3のストレージメトリクスは 1 日に 1 回報告され、すべてのお客様に追加料金なしで提供されます。

  • Request metrics ‐ Amazon S3 リクエストをモニタリングして、運用上の問題を迅速に特定し、対応することも選択できます。メトリクスは、処理のレイテンシーの後に 1 分間隔で使用できます。これら CloudWatch メトリクスは、Amazon CloudWatch カスタムメトリクスと同じ料金で課金されます。CloudWatch の料金については、Amazon CloudWatch 料金表を参照してください。これらのメトリクスの取得をオプトインする方法の詳細については、「バケットのメトリクス設定」を参照してください。

    有効にすると、すべてのオブジェクトオペレーションのリクエストメトリクスが報告されます。デフォルトでは、Amazon S3 バケットレベルでこれらの 1 分のメトリクスが利用可能です。共有プレフィックスまたはオブジェクトタグを使用して収集したメトリクスにフィルタを定義することもできます。これにより、メトリクスフィルタを特定のビジネスアプリケーション、ワークフロー、または内部組織に合わせることができます。

すべての CloudWatch 統計は 15 か月間保持されるため、履歴情報にアクセスしてウェブアプリケーションまたはサービスの動作をより的確に把握することができます。詳細については、Amazon CloudWatch ユーザーガイドの「Amazon CloudWatch とは」を参照してください。

メトリクスとディメンション

Amazon S3 が CloudWatch に送信するストレージメトリクスおよびディメンションは次のとおりです。

バケットの Amazon S3 CloudWatch 日次ストレージメトリクス

AWS/S3 名前空間には、バケットの以下の日次ストレージメトリクスが含まれます。

メトリクス Description
BucketSizeBytes

STANDARD ストレージクラス、INTELLIGENT_TIERING ストレージクラス、標準 – 低頻度アクセス (STANDARD_IA) ストレージクラス、OneZone – 低頻度アクセス (ONEZONE_IA)、低冗長化ストレージ (RRS) クラス、または Glacier (GLACIER) ストレージクラスのバケットに保存されているデータの量 (バイト単位)。この値を計算するには、バケット内のすべてのオブジェクト (最新のオブジェクトと最新でないオブジェクトの両方) のサイズを合計します。これには、バケットに対するすべての不完全なマルチパートアップロードのすべてのパートのサイズも含めます。

有効なストレージタイプのフィルター: StandardStorageIntelligentTieringStorageGlacierS3ObjectOverheadStandardIAStorageStandardIASizeOverheadStandardIAStorageStandardIAObjectOverheadOneZoneIAStorageOneZoneIASizeOverheadReducedRedundancyStorageGlacierStorage、および GlacierObjectOverhead (StorageType ディメンションを参照)

単位: バイト

有効な統計: Average

NumberOfObjects

GLACIER ストレージクラスを除く、すべてのストレージクラスについて、バケットに保存されたオブジェクトの合計数。この値を計算するには、バケット内のすべてのオブジェクト (最新のオブジェクトと最新でないオブジェクトの両方) と、バケットに対するすべての不完全なマルチパートアップロードの合計パート数をカウントします。

有効なストレージタイプのフィルター: AllStorageTypes (StorageType ディメンションを参照)

単位: 個

有効な統計: Average

Amazon S3 CloudWatch リクエストのメトリクス

AWS/S3 名前空間には、次のリクエストメトリクスが含まれます。

メトリクス 説明
AllRequests

タイプに関係なく、Amazon S3 バケットに対する HTTP リクエストの総数。フィルターでメトリクス設定を使用している場合、このメトリクスはフィルターの要件を満たすバケット内のオブジェクトに対する HTTP リクエストのみを返します。

単位: 個

有効な統計: Sum

GetRequests

Amazon S3 バケット内のオブジェクトに対する HTTP GET リクエストの数。これには、リストオペレーションは含まれません。

単位: 個

有効な統計: Sum

注記

マルチパートアップロードのリストパートのリストバケットオブジェクトバージョンの取得など、ページ分割されたリスト指向のリクエストは、このメトリクスに含まれません。

PutRequests

Amazon S3 バケット内のオブジェクトに対する HTTP PUT リクエストの数。

単位: 個

有効な統計: Sum

DeleteRequests

Amazon S3 バケットのオブジェクトに対する HTTP DELETE リクエストの数。これには、複数オブジェクトの削除リクエストも含まれます。このメトリクスは、削除されるオブジェクトの数ではなくリクエストの数を示します。

単位: 個

有効な統計: Sum

HeadRequests

Amazon S3 バケットに対する HTTP HEAD リクエストの数。

単位: 個

有効な統計: Sum

PostRequests

Amazon S3 バケットに対する HTTP POST リクエストの数。

単位: 個

有効な統計: Sum

注記

複数オブジェクトの削除リクエストと SELECT オブジェクトのコンテンツリクエストは、このメトリクスに含まれません。

SelectRequests

Amazon S3 バケットのオブジェクトに対する Amazon S3 SELECT オブジェクトのコンテンツリクエストの数。

単位: 個

有効な統計: Sum

SelectScannedBytes

Amazon S3 バケットの Amazon S3 SELECT オブジェクトのコンテンツリクエストでスキャンされたデータのバイト数。

単位: バイト

有効な統計: Average (リクエストあたりのバイト数)、Sum (期間あたりのバイト数)、Sample Count、Min、Max

SelectReturnedBytes

Amazon S3 バケットの Amazon S3 SELECT オブジェクトのコンテンツリクエストで返されたデータのバイト数。

単位: バイト

有効な統計: Average (リクエストあたりのバイト数)、Sum (期間あたりのバイト数)、Sample Count、Min、Max

ListRequests

バケットの内容をリストする HTTP リクエストの数。

単位: 個

有効な統計: Sum

BytesDownloaded

Amazon S3 バケットに対する、レスポンスに本文が含まれるリクエストに対してダウンロードされたバイト数。

単位: バイト

有効な統計: Average (リクエストあたりのバイト数)、Sum (期間あたりのバイト数)、Sample Count、Min、Max

BytesUploaded

Amazon S3 バケットに対する、リクエストボディを含むアップロードされたバイト数。

単位: バイト

有効な統計: Average (リクエストあたりのバイト数)、Sum (期間あたりのバイト数)、Sample Count、Min、Max

4xxErrors

Amazon S3 バケットに対する、値が 0 または 1 の HTTP 4xx クライアントエラーステータスコードリクエストの数。average 統計はエラーレートを示し、sum 統計は各期間中のそのタイプのエラー数を示します。

単位: 個

有効な統計: Average (リクエストあたりの報告数)、Sum (期間あたりの報告数)、Min、Max、Sample Count

5xxErrors

Amazon S3 バケットに対する、値が 0 または 1 の HTTP 5xx サーバーエラーステータスコードリクエストの数。average 統計はエラーレートを示し、sum 統計は各期間中のそのタイプのエラー数を示します。

単位: カウント

有効な統計: Average (リクエストあたりの報告数)、Sum (期間あたりの報告数)、Min、Max、Sample Count

FirstByteLatency

Amazon S3 バケットがリクエスト全体を受信してからレスポンスの返信が開始するまでのリクエストあたりの時間。

単位: ミリ秒

有効な統計: Average、Sum、Min、Max、Sample Count

TotalRequestLatency

最初のバイトが受信されてから Amazon S3 バケットに最後のバイトが送信されるまでのリクエストあたりの経過時間。これには、FirstByteLatency には含まれない、リクエストボディの受信とレスポンス本文の送信にかかった時間が含まれます。

単位: ミリ秒

有効な統計: Average、Sum、Min、Max、Sample Count

Amazon S3 CloudWatch ディメンション

以下のディメンションは、Amazon S3 メトリクスをフィルターリングするために使用されます。

ディメンション

説明

BucketName

このディメンションを指定すると、リクエストしたデータがフィルターリングされて、指定のバケットのものだけになります。

StorageType

このディメンションは、バケットに保存されたデータを、以下のストレージタイプでフィルターリングします。

  • StandardStorage – STANDARD ストレージクラスのオブジェクトに使用されているバイト数。

  • IntelligentTieringFAStorage – INTELLIGENT_TIERING ストレージクラスの高頻度アクセス階層のオブジェクトに使用されているバイト数。

  • IntelligentTieringIAStorage – INTELLIGENT_TIERING ストレージクラスの低頻度アクセス階層のオブジェクトに使用されているバイト数。

  • StandardIAStorage – 標準 – 低頻度アクセス (STANDARD_IA) ストレージクラスのオブジェクトに使用されているバイト数。

  • StandardIASizeOverhead – STANDARD_IA ストレージクラスの 128 KB 未満のオブジェクトに使用されているバイト数。

  • OneZoneIAStorage – 1 ゾーン – 低頻度アクセス (ONEZONE_IA) ストレージクラスのオブジェクトに使用されているバイト数。

  • OneZoneIASizeOverhead – ONEZONE_IA ストレージクラスの 128 KB 未満のオブジェクトに使用されているバイト数。

  • ReducedRedundancyStorage – 低冗長化ストレージ (RRS) クラスのオブジェクトに使用されているバイト数。

  • GlacierStorage – Glacier (GLACIER) ストレージクラスのオブジェクトに使用されているバイト数。

  • GlacierStorageOverhead – Glacier にアーカイブされたオブジェクトごとに、Amazon S3 はオブジェクト名およびその他のメタデータ用に 8 KB のストレージを使用します。この追加ストレージに対しては、Amazon S3 の標準料金が課金されます。アーカイブされるオブジェクト 1 個あたり、Glacier でインデックスおよび関連するメタデータのために 32 KB のストレージが追加されます。この追加データは、オブジェクトを特定して復元するのに必要です。この追加ストレージに対しては、Glacier の料金が課金されます。

FilterId

このディメンションは、プレフィックスやタグなど、バケットに対するリクエストメトリクスに対して指定するメトリクス設定をフィルターリングします。メトリクス設定を作成する際に、フィルター ID を指定します。詳細については、「バケットのメトリクス設定」を参照してください。

CloudWatch メトリクスへのアクセス

以下の手順を使用して、Amazon S3 のストレージメトリクスを表示できます。Amazon S3 メトリクスを含めるには、開始と終了のタイムスタンプを設定する必要があります。特定の 24 時間あたりのメトリクスの場合は、期間を 1 日の秒数である 86400 秒に設定します。また、BucketName および StorageType ディメンションを忘れずに設定してください。

たとえば、AWS CLI を使用して特定のバケットのサイズの平均 (バイト単位) を取得する場合、次のコマンドを使用できます。

aws cloudwatch get-metric-statistics --metric-name BucketSizeBytes --namespace AWS/S3 --start-time 2016-10-19T00:00:00Z --end-time 2016-10-20T00:00:00Z --statistics Average --unit Bytes --region us-west-2 --dimensions Name=BucketName,Value=ExampleBucket Name=StorageType,Value=StandardStorage --period 86400 --output json

この例では、次の出力が生成されます。

{ "Datapoints": [ { "Timestamp": "2016-10-19T00:00:00Z", "Average": 1025328.0, "Unit": "Bytes" } ], "Label": "BucketSizeBytes" }

CloudWatch コンソールを使用してメトリクスを表示するには

  1. https://console.aws.amazon.com/cloudwatch/にある CloudWatch コンソールを開きます。

  2. ナビゲーションペインで メトリクスを選択します。

  3. [S3] 名前空間を選択します。

  4. (オプション) メトリクスを表示するには、検索フィールドにメトリクス名を入力します。

  5. (オプション) [StorageType] ディメンションでフィルタリングする場合は、検索フィールドにストレージクラスの名前を入力します。

AWS CLI を使用して AWS アカウントに保存された有効なメトリクスのリストを表示するには

  • コマンドプロンプトで、次のコマンドを使用します。

    aws cloudwatch list-metrics --namespace "AWS/S3"