¿Por qué aparece el error «La configuración está definida de forma ambigua» al crear una notificación de evento de Amazon S3 para activar mi función de Lambda?

5 minutos de lectura
0

Estoy intentando crear una notificación de evento de bucket de Amazon Simple Storage Service (Amazon S3) para activar mi función de AWS Lambda y he recibido un error.

Breve descripción

El error «La configuración está definida de forma ambigua» se produce cuando la información del evento de una notificación y su prefijo o sufijo se superponen con la configuración de notificaciones de un bucket de S3.

El error puede producirse cuando realiza una de las siguientes acciones:

  • Recrear una notificación de evento de S3 que eliminó recientemente.
  • Creando notificaciones de eventos de S3 para varios eventos superpuestos mediante prefijos o sufijos superpuestos.

**Nota:**Las configuraciones de notificación de eventos de Amazon S3 permiten la superposición de eventos con prefijos o sufijos que no se superpongan. Las configuraciones también permiten eventos que no se superpongan con prefijos o sufijos superpuestos.

Para obtener más información y ejemplos, consulte Configurar las notificaciones de eventos mediante el filtrado de nombres de clave de objeto.

Resolución

**Nota:**Si recibe errores al ejecutar los comandos de la interfaz de línea de comandos de AWS (CLI de AWS), asegúrese de utilizar la versión más reciente de la CLI de AWS.

Para revisar la configuración de notificaciones de su bucket de S3 actual, realice una de las siguientes acciones:

A continuación, realice una de las siguientes acciones:

Eliminar un evento superpuesto

En la consola de Amazon S3, elimine una notificación de evento existente que se superponga con la nueva que está intentando crear.

**Nota:**Cuando elimina un activador de función de Lambda, la notificación de evento de S3 asociada no se elimina automáticamente. También debe eliminar la notificación en Amazon S3 antes de crear un nuevo activador sin restricciones de sufijo.

\ -o-

Actualice el archivo JSON de configuración de notificaciones en su bucket de S3 mediante AWS CLI. Para obtener una lista de todas las notificaciones de eventos configuradas en su bucket de S3, ejecute el comando get-bucket-notification-configuration de AWS CLI. Para eliminar todas las notificaciones de eventos de S3, ejecute el comando put-bucket-notification-configuration de AWS CLI, similar al siguiente:

Nota: Sustituya bucket-name por el nombre de su bucket.

aws s3api put-bucket-notification-configuration --bucket=<bucket-name> --notification-configuration="{}"

Tras eliminar la notificación de eventos superpuestos, puede agregar nuevas notificaciones mediante la consola de Amazon S3 o el comando put-bucket-notification-configuration de AWS CLI.

Reconfigurar la nueva notificación

Cambie el nombre de la clave de objeto del espacio de nombres de su bucket de S3 para permitir varios eventos superpuestos con prefijos no superpuestos.

Por ejemplo, para especificar que los objetos de eventos superpuestos, como las imágenes cargadas, utilicen una carpeta de bucket de S3 diferente (prefijo) en función del tipo de archivo de imagen (sufijo):

  • S3://mybucket/uploadedJPEG
  • S3://mybucket/uploadedGIF

Rediseño para su caso de uso

Si no puede reconfigurar la notificación de eventos de S3 para evitar la superposición, pruebe a rediseñar su arquitectura para solucionarlo.

Por ejemplo:

Consejo: Para arquitecturas y procesos más complejos, use una máquina de estados de AWS Step Functions para diseñar y administrar el flujo de trabajo. Para más información, consulte los casos de uso de AWS Step Functions y los Tutoriales sobre Step Functions.


Información relacionada

¿Por qué aparece el error «No se pueden validar las siguientes configuraciones de destino» al crear una notificación de eventos de Amazon S3 para invocar mi función de Lambda?

¿Por qué mi notificación de eventos de Amazon S3 no invoca mi función de Lambda?

Usar AWS Lambda con Amazon S3

Tutorial: Uso de un activador de Amazon S3 para invocar una función de Lambda

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace un año