Use GetJobOutput com um AWS SDK ou CLI - Amazon Glacier

Esta página é somente para clientes atuais do serviço Amazon Glacier que usam Vaults e a API REST original de 2012.

Se você estiver procurando por soluções de armazenamento de arquivos, recomendamos usar as classes de armazenamento Amazon Glacier no Amazon S3, S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval e S3 Glacier Deep Archive. Para saber mais sobre essas opções de armazenamento, consulte as classes de armazenamento do Amazon Glacier.

O Amazon Glacier (serviço autônomo original baseado em cofre) não aceitará mais novos clientes a partir de 15 de dezembro de 2025, sem impacto para os clientes existentes. O Amazon Glacier é um serviço independente APIs que armazena dados em cofres e é diferente das classes de armazenamento Amazon S3 e Amazon S3 Glacier. Seus dados existentes permanecerão seguros e acessíveis no Amazon Glacier indefinidamente. Nenhuma migração é necessária. Para armazenamento de arquivamento de baixo custo e longo prazo, AWS recomenda as classes de armazenamento Amazon S3 Glacier, que oferecem uma experiência superior ao cliente com APIs base em buckets S3, disponibilidade Região da AWS total, custos mais baixos e integração de serviços. AWS Se você quiser recursos aprimorados, considere migrar para as classes de armazenamento do Amazon S3 Glacier usando AWS nossa orientação de soluções para transferir dados dos cofres do Amazon Glacier para as classes de armazenamento do Amazon S3 Glacier.

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Use GetJobOutput com um AWS SDK ou CLI

Os exemplos de código a seguir mostram como usar o GetJobOutput.

Exemplos de ações são trechos de código de programas maiores e devem ser executados em contexto. É possível ver essa ação em contexto no seguinte exemplo de código:

CLI
AWS CLI

O seguinte comando salva a saída de um trabalho de inventário do cofre em um arquivo no diretório atual chamado output.json:

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

O job-id está disponível na saída de aws glacier list-jobs. Observe que o nome do arquivo de saída é um argumento posicional que não é prefixado por um nome de opção. O Amazon Glacier exige um argumento de ID de conta ao realizar operações, mas você pode usar um hífen para especificar a conta em uso.

Saída:

{ "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"}]}
  • Para obter detalhes da API, consulte GetJobOutputem Referência de AWS CLI Comandos.

PowerShell
Ferramentas para PowerShell V4

Exemplo 1: baixar o conteúdo do arquivo que foi agendado para recuperação na tarefa especificada e armazená-lo em um arquivo no disco. O download valida a soma de verificação para você, se houver uma disponível. Se desejado, toda a resposta, incluindo a soma de verificação, pode ser exibida especificando -Select '*'.

Read-GLCJobOutput -VaultName myvault -JobId "HSWjArc...Zq2XLiW" -FilePath "c:\temp\blue.bin"
  • Para obter detalhes da API, consulte GetJobOutputem Referência de Ferramentas da AWS para PowerShell cmdlet (V4).

Ferramentas para PowerShell V5

Exemplo 1: baixar o conteúdo do arquivo que foi agendado para recuperação na tarefa especificada e armazená-lo em um arquivo no disco. O download valida a soma de verificação para você, se houver uma disponível. Se desejado, toda a resposta, incluindo a soma de verificação, pode ser exibida especificando -Select '*'.

Read-GLCJobOutput -VaultName myvault -JobId "HSWjArc...Zq2XLiW" -FilePath "c:\temp\blue.bin"
  • Para obter detalhes da API, consulte GetJobOutputem Referência de Ferramentas da AWS para PowerShell cmdlet (V5).

Python
SDK para Python (Boto3)
nota

Tem mais sobre GitHub. Encontre o exemplo completo e saiba como configurar e executar no AWS Code Examples Repository.

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
  • Para obter detalhes da API, consulte a GetJobOutputReferência da API AWS SDK for Python (Boto3).

Para obter uma lista completa dos guias do desenvolvedor do AWS SDK e exemplos de código, consulteUsando o Amazon Glacier com um SDK AWS. Este tópico também inclui informações sobre como começar e detalhes sobre versões anteriores do SDK.