Uso de SetVaultNotifications con un SDK de AWS o la CLI - Amazon Glacier

Esta página es solo para los clientes actuales del servicio Amazon Glacier que utilizan Vaults y la API de REST original de 2012.

Si busca soluciones de almacenamiento de archivos, se recomienda que utilice las clases de almacenamiento de Amazon Glacier en Amazon S3, S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval y S3 Glacier Deep Archive. Para obtener más información sobre estas opciones de almacenamiento, consulte las clases de almacenamiento de Amazon Glacier.

Amazon Glacier (servicio original independiente basado en almacenes) ya no aceptará nuevos clientes a partir del 15 de diciembre de 2025, sin que ello afecte a los clientes actuales. Amazon Glacier es un servicio independiente con sus propias API que almacena datos en almacenes y es distinto de las clases de almacenamiento Amazon S3 y Amazon S3 Glacier. Sus datos actuales permanecerán seguros y accesibles en Amazon Glacier de forma indefinida. No hay que hacer migraciones. Para un almacenamiento de archivos a largo plazo y de bajo costo, AWS recomienda las clases de almacenamiento Amazon S3 Glacier, que ofrecen una experiencia del cliente superior con las API basadas en buckets de S3, Región de AWS disponibilidad total, costos más bajos e AWS integración de servicios. Si desea mejorar las capacidades, considere la posibilidad de migrar a las clases de almacenamiento de Amazon S3 Glacier mediante nuestra AWSGuía de soluciones para la transferencia de datos de los almacenes de Amazon Glacier a las clases de almacenamiento de Amazon S3 Glacier.

Uso de SetVaultNotifications con un SDK de AWS o la CLI

Los siguientes ejemplos de código muestran cómo utilizar SetVaultNotifications.

Los ejemplos de acciones son extractos de código de programas más grandes y deben ejecutarse en contexto. Puede ver esta acción en contexto en el siguiente ejemplo de código:

CLI
AWS CLI

El siguiente comando configura las notificaciones de SNS para un almacén denominado my-vault:

aws glacier set-vault-notifications --account-id - --vault-name my-vault --vault-notification-config file://notificationconfig.json

notificationconfig.json es un archivo JSON de la carpeta actual que especifica un tema de SNS y los eventos que se van a publicar:

{ "SNSTopic": "arn:aws:sns:us-west-2:0123456789012:my-vault", "Events": ["ArchiveRetrievalCompleted", "InventoryRetrievalCompleted"] }

Amazon Glacier requiere un argumento de ID de cuenta al realizar operaciones, pero puede usar un guion para especificar la cuenta en uso.

  • Para obtener información sobre la API, consulte SetVaultNotifications en la Referencia de comandos de la AWS CLI.

Python
SDK para Python (Boto3)
nota

Hay más en GitHub. Busque el ejemplo completo y aprenda a configurar y ejecutar en el Repositorio de ejemplos de código de 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 def set_notifications(self, vault, sns_topic_arn): """ Sets an Amazon Simple Notification Service (Amazon SNS) topic as a target for notifications. Amazon S3 Glacier publishes messages to this topic for the configured list of events. :param vault: The vault to set up to publish notifications. :param sns_topic_arn: The Amazon Resource Name (ARN) of the topic that receives notifications. :return: Data about the new notification configuration. """ try: notification = self.glacier_resource.Notification("-", vault.name) notification.set( vaultNotificationConfig={ "SNSTopic": sns_topic_arn, "Events": [ "ArchiveRetrievalCompleted", "InventoryRetrievalCompleted", ], } ) logger.info( "Notifications will be sent to %s for events %s from %s.", notification.sns_topic, notification.events, notification.vault_name, ) except ClientError: logger.exception( "Couldn't set notifications to %s on %s.", sns_topic_arn, vault.name ) raise else: return notification
  • Para obtener detalles sobre la API, consulte SetVaultNotifications en Referencia de la API de AWS SDK para Python (Boto3).

Para obtener una lista completa de las guías para desarrolladores de AWS SDK y ejemplos de código, consulte Uso de Amazon Glacier con un SDK de AWS. En este tema también se incluye información sobre cómo comenzar a utilizar el SDK y detalles sobre sus versiones anteriores.