DocumentDB - AWS Serverless Application Model

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

DocumentDB

El objeto que describe un tipo de fuente de evento DocumentDB. Para obtener más información, consulta Uso de AWS Lambda con Amazon DocumentDB en la Guía para desarrolladores de AWS Lambda.

Sintaxis

Para declarar esta entidad en tu plantilla de AWS SAM, usa la siguiente sintaxis:

YAML

BatchSize: Integer Cluster: String CollectionName: String DatabaseName: String Enabled: Boolean FilterCriteria: FilterCriteria FullDocument: String KmsKeyArn: String MaximumBatchingWindowInSeconds: Integer SecretsManagerKmsKeyId: String SourceAccessConfigurations: List StartingPosition: String StartingPositionTimestamp: Double

Propiedades

BatchSize

El número máximo de elementos que se recuperan en un único lote.

Tipo: entero

Obligatorio: no

Compatibilidad con AWS CloudFormation: esta propiedad se transfiere directamente a la propiedad BatchSize de un recurso AWS::Lambda::EventSourceMapping.

Cluster

El nombre de recurso de Amazon (ARN) del clúster de Amazon DocumentDB.

Tipo: cadena

Obligatorio: sí

Compatibilidad con AWS CloudFormation: esta propiedad se transfiere directamente a la propiedad EventSourceArn de un recurso AWS::Lambda::EventSourceMapping.

CollectionName

El nombre de la colección a consumir dentro de la base de datos. Si no especificas ninguna colección, Lambda consume todas las colecciones.

Tipo: cadena

Obligatorio: no

Compatibilidad con AWS CloudFormation: esta propiedad pasa directamente a la propiedad CollectionName del tipo de datos DocumentDBEventSourceConfig de AWS::Lambda::EventSourceMapping.

DatabaseName

El nombre de la base de datos a consumir dentro del clúster de Amazon DocumentDB.

Tipo: cadena

Obligatorio: sí

Compatibilidad con AWS CloudFormation: esta propiedad pasa directamente a la propiedad DatabaseName del tipo de datos DocumentDBEventSourceConfig de AWS::Lambda::EventSourceMapping.

Enabled

Si es true, la asignación de orígenes de eventos está activa. Establécelo en false para poner en pausa el sondeo y la invocación.

Tipo: Booleano

Obligatorio: no

Compatibilidad con AWS CloudFormation: esta propiedad se transfiere directamente a la propiedad Enabled de un recurso AWS::Lambda::EventSourceMapping.

FilterCriteria

Un objeto que define los criterios que determinan si Lambda debe procesar un evento o no. Para obtener más información, consulta Filtrado de eventos de Lambda en la Guía para desarrolladores de AWS Lambda.

Tipo: FilterCriteria

Obligatorio: no

Compatibilidad con AWS CloudFormation: esta propiedad se transfiere directamente a la propiedad FilterCriteria de un recurso AWS::Lambda::EventSourceMapping.

FullDocument

Determina lo que Amazon DocumentDB envía al flujo de eventos durante las operaciones de actualización del documento. Si se establece en UpdateLookup, Amazon DocumentDB envía un delta que describe los cambios, junto con una copia del documento completo. De lo contrario, Amazon DocumentDB envía solo un documento parcial que contiene los cambios.

Tipo: cadena

Obligatorio: no

Compatibilidad con AWS CloudFormation: esta propiedad pasa directamente a la propiedad FullDocument del tipo de datos DocumentDBEventSourceConfig de AWS::Lambda::EventSourceMapping.

KmsKeyArn

El nombre de recurso de Amazon (ARN) de la clave de que se utilizará para cifrar la información de este evento.

Tipo: cadena

Obligatorio: no

Compatibilidad con AWS CloudFormation: esta propiedad se transfiere directamente a la propiedad KmsKeyArn de un recurso AWS::Lambda::EventSourceMapping.

MaximumBatchingWindowInSeconds

La cantidad de tiempo máxima para recopilar registros antes de invocar la función, en segundos.

Tipo: Entero

Obligatorio: no

Compatibilidad con AWS CloudFormation: esta propiedad se transfiere directamente a la propiedad MaximumBatchingWindowInSeconds de un recurso AWS::Lambda::EventSourceMapping.

SecretsManagerKmsKeyId

El identificador de clave AWS Key Management Service (AWS KMS) de una clave gestionada por el cliente de AWS Secrets Manager. Se requiere cuando se utiliza una clave gestionada por el cliente de Secrets Manager con un rol de ejecución de Lambda que no incluye el permiso kms:Decrypt.

El valor de esta propiedad es un UUID. Por ejemplo: 1abc23d4-567f-8ab9-cde0-1fab234c5d67.

Tipo: cadena

Obligatorio: condicional

Compatibilidad con AWS CloudFormation: esta propiedad es exclusiva de AWS SAM y no tiene un equivalente AWS CloudFormation.

SourceAccessConfigurations

Matriz del protocolo de autenticación o del host virtual. Especifica esto mediante el tipo de datos SourceAccessConfigurations.

Para el tipo de origen del evento DocumentDB, el único tipo de configuración válido es BASIC_AUTH

  • BASIC_AUTH: el secreto de Secrets Manager que almacena las credenciales del agente. Para este tipo, la credencial debe tener el siguiente formato: {"username": "your-username", "password": "your-password"}. Solo se permite un objeto de tipo BASIC_AUTH.

Tipo: lista

Obligatorio: sí

Compatibilidad con AWS CloudFormation: esta propiedad se transfiere directamente a la propiedad SourceAccessConfigurations de un recurso AWS::Lambda::EventSourceMapping.

StartingPosition

La posición en el flujo donde comienza la lectura.

  • AT_TIMESTAMP: especifique el tiempo a partir del cual comenzar la lectura de registros.

  • LATEST: registros nuevos de solo lectura.

  • TRIM_HORIZON: procese todos los registros disponibles.

Tipo: cadena

Obligatorio: sí

Compatibilidad con AWS CloudFormation: esta propiedad se transfiere directamente a la propiedad StartingPosition de un recurso AWS::Lambda::EventSourceMapping.

StartingPositionTimestamp

El tiempo a partir del cual comenzar la lectura, en segundos de tiempo Unix. Defina StartingPositionTimestamp cuando StartingPosition se especifica como AT_TIMESTAMP.

Tipo: Doble

Obligatorio: no

Compatibilidad con AWS CloudFormation: esta propiedad se transfiere directamente a la propiedad StartingPositionTimestamp de un recurso AWS::Lambda::EventSourceMapping.

Ejemplos

Origen de eventos de Amazon DocumentDB

AWSTemplateFormatVersion: '2010-09-09' Transform: AWS::Serverless-2016-10-31 ... Resources: MyFunction: Type: AWS::Serverless::Function Properties: ... Events: MyDDBEvent: Type: DocumentDB Properties: Cluster: "arn:aws:rds:us-west-2:123456789012:cluster:docdb-2023-01-01" BatchSize: 10 MaximumBatchingWindowInSeconds: 5 DatabaseName: "db1" CollectionName: "collection1" FullDocument: "UpdateLookup" SourceAccessConfigurations: - Type: BASIC_AUTH URI: "arn:aws:secretsmanager:us-west-2:123456789012:secret:doc-db"