AWS SDK または CLI GetJobOutputで を使用する - Amazon S3 Glacier

このページは、2012 年にリリースされた当初のボールトと REST API を使用する、S3 Glacier サービスの既存のお客様を対象としたものです。

アーカイブストレージソリューションをお探しの場合は、Amazon S3 の S3 Glacier ストレージクラス (S3 Glacier Instant RetrievalS3 Glacier Flexible RetrievalS3 Glacier Deep Archive) を使用することをお勧めします。これらのストレージオプションの詳細については、「Amazon S3 ユーザーガイド」の「S3 Glacier ストレージクラス」および「長期データストレージとしての S3 Glacier ストレージクラスを理解する」を参照してください。これらのストレージクラスは Amazon S3 API を使用し、すべてのリージョンで利用可能で、Amazon S3 コンソール内で管理できます。提供される機能には、ストレージコスト分析、ストレージレンズ、高度なオプションの暗号化機能などがあります。

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

AWS SDK または CLI GetJobOutputで を使用する

以下のコード例は、GetJobOutput の使用方法を示しています。

アクション例は、より大きなプログラムからのコードの抜粋であり、コンテキスト内で実行する必要があります。次のコード例で、このアクションのコンテキストを確認できます。

CLI
AWS CLI

次のコマンドは、ボールトインベントリジョブの出力を、現在のディレクトリの output.json という名前のファイルに保存します。

aws glacier get-job-output --account-id - --vault-name my-vault --job-id zbxcm3Z_3z5UkoroF7SuZKrxgGoDc3RloGduS7Eg-RO47Yc6FxsdGBgf_Q2DK5Ejh18CnTS5XW4_XqlNHS61dsO4CnMW output.json

job-id は、aws glacier list-jobs の出力にあります。出力ファイル名はオプション名の前に付いていない位置引数であることに注意してください。Amazon Glacier では、オペレーションを実行する際にアカウント ID 引数が必要ですが、ハイフンを使用して使用中のアカウントを指定できます。

出力:

{ "status": 200, "acceptRanges": "bytes", "contentType": "application/json" }

output.json:

{"VaultARN":"arn:aws:glacier:us-west-2:0123456789012:vaults/my-vault","InventoryDate":"2015-04-07T00:26:18Z","ArchiveList":[{"ArchiveId":"kKB7ymWJVpPSwhGP6ycSOAekp9ZYe_--zM_mw6k76ZFGEIWQX-ybtRDvc2VkPSDtfKmQrj0IRQLSGsNuDp-AJVlu2ccmDSyDUmZwKbwbpAdGATGDiB3hHO0bjbGehXTcApVud_wyDw","ArchiveDescription":"multipart upload test","CreationDate":"2015-04-06T22:24:34Z","Size":3145728,"SHA256TreeHash":"9628195fcdbcbbe76cdde932d4646fa7de5f219fb39823836d81f0cc0e18aa67"}]}
  • API の詳細については、「AWS CLI コマンドリファレンス」の「GetJobOutput」を参照してください。

PowerShell
Tools for PowerShell

例 1: 指定したジョブで取得がスケジュールされているアーカイブコンテンツをダウンロードし、コンテンツをディスク上のファイルに保存します。ダウンロード時に、チェックサムがある場合は自動的に検証されます。必要に応じて -Select '*' を指定すると、チェックサムを含むレスポンス全体を返すことができます。

Read-GLCJobOutput -VaultName myvault -JobId "HSWjArc...Zq2XLiW" -FilePath "c:\temp\blue.bin"
  • API の詳細については、「AWS Tools for PowerShell コマンドレットリファレンス」の「GetJobOutput」を参照してください。

Python
SDK for Python (Boto3)
注記

GitHub には、その他のリソースもあります。用例一覧を検索し、AWS コード例リポジトリでの設定と実行の方法を確認してください。

class GlacierWrapper: """Encapsulates Amazon S3 Glacier API operations.""" def __init__(self, glacier_resource): """ :param glacier_resource: A Boto3 Amazon S3 Glacier resource. """ self.glacier_resource = glacier_resource @staticmethod def get_job_output(job): """ Gets the output of a job, such as a vault inventory or the contents of an archive. :param job: The job to get output from. :return: The job output, in bytes. """ try: response = job.get_output() out_bytes = response["body"].read() logger.info("Read %s bytes from job %s.", len(out_bytes), job.id) if "archiveDescription" in response: logger.info( "These bytes are described as '%s'", response["archiveDescription"] ) except ClientError: logger.exception("Couldn't get output for job %s.", job.id) raise else: return out_bytes
  • API の詳細については、「AWS SDK for Python (Boto3) API リファレンス」の「GetJobOutput」を参照してください。

AWS SDK 開発者ガイドとコード例の完全なリストについては、「」を参照してくださいでの S3 Glacier の使用AWSSDK。このトピックには、使用開始方法に関する情報と、以前の SDK バージョンの詳細も含まれています。