エラーレスポンス - Amazon S3 Glacier

Amazon Simple Storage Service (Amazon S3) のアーカイブストレージを初めて使用する場合は、Amazon S3 の S3 Glacier ストレージクラス、S3 Glacier Instant RetrievalS3 Glacier Flexible RetrievalS3 Glacier Deep Archive について詳しく知ることから始めることをお勧めします。詳細については、Amazon S3 ユーザーガイドの「S3 Glacier ストレージクラス」と「オブジェクトをアーカイブするためのストレージクラス」を参照してください。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

エラーレスポンス

API は、エラーが発生すると以下の例外のいずれか 1 つを返します。

コード 説明 HTTP ステータスコード タイプ
AccessDeniedException AWS Identity and Access Management (IAM) ポリシーにより許可されていないリソースにアクセスしようとした場合、またはリクエスト URI で誤った AWS アカウント ID が使用された場合に返されます。詳細については、「Amazon S3 Glacier の ID とアクセス管理」を参照してください。 403 Forbidden クライアント
BadRequest リクエストを処理することができない場合に返されます。 400 Bad Request クライアント
ExpiredTokenException リクエストで使用しているセキュリティトークンが期限切れになっている場合に返されます。 403 Forbidden クライアント
InsufficientCapacityException 迅速リクエストを処理する容量が足りない場合に返されます。このエラーは、迅速取り出しにのみ該当し、標準取り出しまたは大容量取り出しには該当しません。 503 Service Unavailable サーバー
InvalidParameterValueException リクエストのパラメータの指定が不正である場合に返されます。 400 Bad Request クライアント
InvalidSignatureException リクエストの署名が無効である場合に返されます。 403 Forbidden クライアント
LimitExceededException リクエストが、ボールトの制限、タグの制限、またはプロビジョニングされた容量の制限のいずれかを超えている場合に返されます。 400 Bad Request クライアント
MissingAuthenticationTokenException 認証データがリクエストにない場合に返されます。 400 Bad Request クライアント
MissingParameterValueException 必須のヘッダーまたはパラメータがリクエストにない場合に返されます。 400 Bad Request クライアント
PolicyEnforcedException 取り出しジョブが現在のデータポリシーの取り出しレート制限を超えた場合に返されます。データ取り出しポリシーの詳細については、「S3 Glacier データ取り出しポリシー」を参照してください。 400 Bad Request クライアント
ResourceNotFoundException ボールト、アップロード ID、ジョブ ID など、指定されたリソースがない場合に返されます。 404 Not Found クライアント
RequestTimeoutException アーカイブをアップロードし、Amazon S3 Glacier (S3 Glacier) がアップロードを受信する際にタイムアウトとなった場合に返されます。 408 Request Timeout クライアント
SerializationException リクエストの本文が無効になっている場合に返されます。JSON ペイロードが含まれる場合には、正しい形式になっていることを確認します。 400 Bad Request クライアント
ServiceUnavailableException サービスがリクエストを完了できない場合に返されます。 500 Internal Server Error サーバー
ThrottlingException S3 Glacier に対するリクエストのレートを減らす必要がある場合に返されます。 400 Bad Request クライアント
UnrecognizedClientException アクセスキー ID またはセキュリティトークンが無効である場合に返されます。 400 Bad Request クライアント

さまさまな S3 Glacier API によって、同じ例外が返されるものの、例外メッセージにはさまざまなものが用意されているため、発生した特定のエラーのトラブルシューティングに役立てることができます。

S3 Glacier は、レスポンス本文でエラーに関する情報を返します。以下の例では、エラーレスポンスの例をいくつか挙げて説明します。

例 1: 存在しないジョブ ID を使用したジョブリクエストに関する説明

存在しないジョブについて ジョブの説明 (GET JobID) リクエストを送信したとします。つまり、存在していないジョブ ID を指定したとします。

GET /-/vaults/examplevault/jobs/HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVEXAMPLEbadJobID HTTP/1.1 Host: glacier.us-west-2.amazonaws.com Date: 20170210T120000Z x-amz-glacier-version: 2012-06-01 Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

レスポンスでは、S3 Glacier によって以下のエラーレスポンスが返されます。

HTTP/1.1 404 Not Found x-amzn-RequestId: AAABaZ9N92Iiyv4N7sru3ABEpSQkuFtmH3NP6aAC51ixfjg Content-Type: application/json Content-Length: 185 Date: Wed, 10 Feb 2017 12:00:00 GMT { "code": "ResourceNotFoundException", "message": "The job ID was not found: HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVEXAMPLEbadJobID", "type": "Client" }

実行する条件は以下のとおりです。

Code

一般的な例外の 1 つです。

タイプ: 文字列

メッセージ

エラーを返した API 特有のエラー発生条件の一般的な説明です。

タイプ: 文字列

タイプ

エラーの原因です。このフィールドの値は、ClientServerUnknown のいずれかになります。

: 文字列

前述のレスポンスでは次の点に注意してください。

  • このエラーレスポンスでは、S3 Glacier によりステータスコードのうち、4xx5xx の値が返されます。この例では、ステータスコードは 404 Not Found です。

  • Content-Type ヘッダーの値 application/json は、本文の JSON を示しています。

  • 本文の JSON には、エラーに関する情報が表示されます。

前述のリクエストで、誤ったジョブ ID ではなく、存在しないボールトを指定したとします。すると、レスポンスには別のメッセージが返されます。

HTTP/1.1 404 Not Found x-amzn-RequestId: AAABBeC9Zw0rp_5D0L8VfB3FA_WlTupqTKAUehMcPhdgni0 Content-Type: application/json Content-Length: 154 Date: Wed, 10 Feb 2017 12:00:00 GMT { "code": "ResourceNotFoundException", "message": "Vault not found for ARN: arn:aws:glacier:us-west-2:012345678901:vaults/examplevault", "type": "Client" }

例 2: リクエストパラメータに無効な値が設定されたジョブリクエストの一覧表示

この例では、ジョブのリスト表示 (GET jobs) リクエストを送信して、ボールトジョブと特定の statuscode を取得します。このとき、statuscode の値として許容される値 finishedInProgress、または Succeeded のいずれでもなく、誤って Failed を指定したとします。

GET /-/vaults/examplevault/jobs?statuscode=finished HTTP/1.1 Host: glacier.us-west-2.amazonaws.com Date: 20170210T120000Z x-amz-glacier-version: 2012-06-01 Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

S3 Glacier によって、適切なメッセージと併せて InvalidParameterValueException が返されます。

HTTP/1.1 400 Bad Request x-amzn-RequestId: AAABaZ9N92Iiyv4N7sru3ABEpSQkuFtmH3NP6aAC51ixfjg Content-Type: application/json Content-Length: 141 Date: Wed, 10 Feb 2017 12:00:00 GMT { "code": "InvalidParameterValueException", "message": "The job status code is not valid: finished", "type: "Client" }