Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
CreateEventSourceMapping
Crée un mappage entre une source d’événement et une fonction AWS Lambda. Lambda lit les éléments à partir de la source d’événements et invoque la fonction.
Pour en savoir plus sur la procédure à suivre pour configurer différentes sources d’événements, consultez les rubriques suivantes.
Les options de gestion des erreurs suivantes ne sont disponibles que pour les sources de flux (DynamoDB et Kinesis) :
-
BisectBatchOnFunctionError
– Si la fonction renvoie une erreur, fractionner le lot en deux, puis réessayer. -
DestinationConfig
– Envoyer les enregistrements ignorés à une file d’attente Amazon SQS ou à une rubrique Amazon SNS. -
MaximumRecordAgeInSeconds
– Ignorer les enregistrements plus anciens que l’âge spécifié. La valeur par défaut est infinie (-1). Lorsque la valeur est infinie (-1), les enregistrements qui ont échoué sont réessayés jusqu’à ce que l’enregistrement expire. -
MaximumRetryAttempts
– Ignorer les enregistrements après le nombre spécifié de tentatives. La valeur par défaut est infinie (-1). Lorsque la valeur est infinie (-1), les enregistrements ayant échoué sont réessayés jusqu’à ce que l’enregistrement expire. -
ParallelizationFactor
– Traiter simultanément plusieurs lots de chaque partition.
Pour en savoir plus sur les paramètres de configuration qui s’appliquent à chaque source d’événements, consultez les rubriques suivantes.
Syntaxe de la demande
POST /2015-03-31/event-source-mappings/ HTTP/1.1
Content-type: application/json
{
"AmazonManagedKafkaEventSourceConfig": {
"ConsumerGroupId": "string
"
},
"BatchSize": number
,
"BisectBatchOnFunctionError": boolean
,
"DestinationConfig": {
"OnFailure": {
"Destination": "string
"
},
"OnSuccess": {
"Destination": "string
"
}
},
"DocumentDBEventSourceConfig": {
"CollectionName": "string
",
"DatabaseName": "string
",
"FullDocument": "string
"
},
"Enabled": boolean
,
"EventSourceArn": "string
",
"FilterCriteria": {
"Filters": [
{
"Pattern": "string
"
}
]
},
"FunctionName": "string
",
"FunctionResponseTypes": [ "string
" ],
"MaximumBatchingWindowInSeconds": number
,
"MaximumRecordAgeInSeconds": number
,
"MaximumRetryAttempts": number
,
"ParallelizationFactor": number
,
"Queues": [ "string
" ],
"ScalingConfig": {
"MaximumConcurrency": number
},
"SelfManagedEventSource": {
"Endpoints": {
"string
" : [ "string
" ]
}
},
"SelfManagedKafkaEventSourceConfig": {
"ConsumerGroupId": "string
"
},
"SourceAccessConfigurations": [
{
"Type": "string
",
"URI": "string
"
}
],
"StartingPosition": "string
",
"StartingPositionTimestamp": number
,
"Topics": [ "string
" ],
"TumblingWindowInSeconds": number
}
Paramètres de demande URI
La demande n’utilise pas de paramètres URI.
Corps de la demande
Cette demande accepte les données suivantes au format JSON.
- AmazonManagedKafkaEventSourceConfig
-
Paramètres de configuration spécifiques pour une source d’événements Amazon Managed Streaming for Apache Kafka (Amazon MSK).
Type : objet AmazonManagedKafkaEventSourceConfig
Obligatoire : non
- BatchSize
-
Nombre maximal d’enregistrements dans chaque lot que Lambda extrait de votre flux ou file d’attente et envoie à votre fonction. Lambda transmet tous les enregistrements du lot à la fonction en un seul appel, dans la limite de charge utile pour une invocation synchrone (6 Mo).
-
Amazon Kinesis – La valeur par défaut est 100. Valeur maximum, 10 000.
-
Amazon DynamoDB Streams – La valeur par défaut est 100. Valeur maximum, 10 000.
-
Amazon Simple Queue Service – La valeur par défaut est 10. Pour les files d’attente standard, le maximum est de 10 000. Pour les files d’attente FIFO, le maximum est de 10.
-
Amazon Managed Streaming for Apache Kafka – La valeur par défaut est 100. Valeur maximum, 10 000.
-
Apache Kafka Autogéré – La valeur par défaut est 100. Valeur maximum, 10 000.
-
Amazon MQ (ActiveMQ et RabbitMQ) – La valeur par défaut est 100. Valeur maximum, 10 000.
-
DocumentDB – Valeur par défaut 100. Valeur maximum, 10 000.
Type : entier
Plage valide : Valeur minimum de 1. Valeur maximum de 10 000.
Obligatoire : non
-
- BisectBatchOnFunctionError
-
(Flux Kinesis et DynamoDB uniquement) Si la fonction renvoie une erreur, partagez le lot en deux et recommencez.
Type : booléen
Obligatoire : non
- DestinationConfig
-
(Kinesis, DynamoDB Streams, Amazon MSK et Kafka autogéré uniquement) Objet de configuration qui spécifie la destination d’un événement après son traitement par Lambda.
Type : objet DestinationConfig
Obligatoire : non
- DocumentDBEventSourceConfig
-
Paramètres de configuration spécifiques pour une source d’événement DocumentDB.
Type : objet DocumentDBEventSourceConfig
Obligatoire : non
- Enabled
-
Si la valeur est sur VRAI, le mappage de source d’événement est actif. Si la valeur est sur FAUX, Lambda interrompt l’interrogation et l’invocation.
Valeur par défaut : VRAI
Type : booléen
Obligatoire : non
- EventSourceArn
-
Amazon Resource Name (ARN) de la source d’événement.
-
Amazon Kinesis – ARN du flux de données ou d’un consommateur de flux.
-
Amazon DynamoDB Streams – ARN du flux.
-
Amazon Simple Queue Service – ARN de la file d’attente.
-
Amazon Managed Streaming for Apache Kafka — L’ARN du cluster ou l’ARN de la connexion VPC (pour les mappages de sources d’événements entre comptes).
-
Amazon MQ – L’ARN de l’agent.
-
Amazon DocumentDB – ARN du flux de modifications DocumentDB.
Type : chaîne
Modèle :
arn:(aws[a-zA-Z0-9-]*):([a-zA-Z0-9\-])+:([a-z]{2}(-gov)?-[a-z]+-\d{1})?:(\d{12})?:(.*)
Obligatoire : non
-
- FilterCriteria
-
Un objet qui définit les critères permettant de déterminer si Lambda doit traiter un événement. Pour plus d’informations, consultez la section Filtrage des événements Lambda.
Type : objet FilterCriteria
Obligatoire : non
- FunctionName
-
Nom de la fonction Lambda.
Formats de nom
-
Nom de fonction –
MyFunction
. -
ARN de fonction –
arn:aws:lambda:us-west-2:123456789012:function:MyFunction
. -
ARN de version ou d’alias –
arn:aws:lambda:us-west-2:123456789012:function:MyFunction:PROD
. -
ARN partiel –
123456789012:function:MyFunction
.
Contrainte de longueur qui s’applique uniquement à l’ARN complet. Si vous spécifiez uniquement le nom de la fonction, ce dernier est limité à 64 caractères.
Type : chaîne
Contraintes de longueur : Longueur minimum de 1. Longueur maximum de 140.
Modèle :
(arn:(aws[a-zA-Z-]*)?:lambda:)?([a-z]{2}(-gov)?-[a-z]+-\d{1}:)?(\d{12}:)?(function:)?([a-zA-Z0-9-_]+)(:(\$LATEST|[a-zA-Z0-9-_]+))?
Obligatoire : oui
-
- FunctionResponseTypes
-
(Flux Kinesis, DynamoDB et Amazon SQS) Liste des énumérations de type de réponse en cours appliquées au mappage des sources d’événements.
Type : tableau de chaînes
Membres du tableau : nombre minimum de 0 élément. Nombre maximum de 1 élément.
Valeurs valides :
ReportBatchItemFailures
Obligatoire : non
- MaximumBatchingWindowInSeconds
-
L’intervalle de temps maximal (en secondes) pour collecter des enregistrements avant d’invoquer la fonction. Vous pouvez configurer
MaximumBatchingWindowInSeconds
à n’importe quelle valeur comprise entre 0 et 300 secondes par incréments de secondes.Pour les flux et les sources d’événements Amazon SQS : la fenêtre de traitement par lot par défaut est de 0 seconde. Pour les sources d’événements Amazon MSK, Apache Kafka autogérées, Amazon MQ et DocumentDB : la fenêtre de traitement par lots par défaut est de 500 ms. Parce que vous ne pouvez que changer
MaximumBatchingWindowInSeconds
par incréments de secondes, vous ne pouvez pas revenir à la fenêtre de traitement par lots par défaut de 500 ms après l’avoir modifiée. Pour restaurer la fenêtre de traitement par lots par défaut, vous devez créer un mappage de source d’événement.Paramètre associé : Pour les flux et les sources d’événements Amazon SQS, lorsque vous définissez
BatchSize
sur une valeur supérieure à 10, vous devez définirMaximumBatchingWindowInSeconds
sur une valeur égale ou supérieure à 1.Type : entier
Plage valide : Valeur minimum de 0. Valeur maximum de 300.
Obligatoire : non
- MaximumRecordAgeInSeconds
-
(Flux Kinesis et DynamoDB uniquement) Ignore les enregistrements plus anciens que l’âge spécifié. La valeur par défaut est infinie (-1).
Type : entier
Plage valide : Valeur minimum de -1. Valeur maximum de 604 800.
Obligatoire : non
- MaximumRetryAttempts
-
(Flux Kinesis et DynamoDB uniquement) Ignore les enregistrements après le nombre de tentatives spécifié. La valeur par défaut est infinie (-1). Lorsque la valeur est infinie (-1), les enregistrements ayant échoué sont réessayés jusqu’à ce que l’enregistrement expire.
Type : entier
Plage valide : Valeur minimum de -1. Valeur maximum de 10 000.
Obligatoire : non
- ParallelizationFactor
-
(Flux Kinesis et DynamoDB uniquement) Nombre de lots à traiter simultanément à partir de chaque partition.
Type : entier
Plage valide : Valeur minimum de 1. Valeur maximum de 10.
Obligatoire : non
- Queues
-
(MQ) Nom de la file d’attente de destination du broker Amazon MQ à consommer.
Type : tableau de chaînes
Membres du tableau : nombre fixe de 1 élément.
Contraintes de longueur : Longueur minimum de 1. Longueur maximum de 1 000.
Modèle :
[\s\S]*
Obligatoire : non
- ScalingConfig
-
(Amazon SQS uniquement) Configuration de dimensionnement pour la source de l’événement. Pour plus d’informations, consultez Configuration de la simultanéité maximale pour les sources d’événements Amazon SQS.
Type : objet ScalingConfig
Obligatoire : non
- SelfManagedEventSource
-
Cluster Apache Kafka autogéré émetteur des enregistrements.
Type : objet SelfManagedEventSource
Obligatoire : non
- SelfManagedKafkaEventSourceConfig
-
Paramètres de configuration spécifiques pour une source d’événement Apache Kafka autogérée.
Type : objet SelfManagedKafkaEventSourceConfig
Obligatoire : non
- SourceAccessConfigurations
-
Tableau des protocoles d’authentification ou des composants VPC requis pour sécuriser votre source d’événement.
Type : tableau d’objets SourceAccessConfiguration
Membres du tableau : nombre minimum de 0 élément. Nombre maximum de 22 éléments.
Obligatoire : non
- StartingPosition
-
Position de début de la lecture dans le flux. Obligatoire pour les sources d’événements Amazon Kinesis et Amazon DynamoDB Stream.
AT_TIMESTAMP
est pris en charge uniquement pour les flux Amazon Kinesis, Amazon DocumentDB, Amazon MSK et Apache Kafka autogéré.Type : chaîne
Valeurs valides :
TRIM_HORIZON | LATEST | AT_TIMESTAMP
Obligatoire : non
- StartingPositionTimestamp
-
Avec
StartingPosition
défini surAT_TIMESTAMP
, l’heure à partir de laquelle doit commencer la lecture, en secondes au format horaire Unix.StartingPositionTimestamp
ne peut pas se situer dans le futur.Type : Timestamp
Obligatoire : non
- Topics
-
Nom de la rubrique Kafka.
Type : tableau de chaînes
Membres du tableau : nombre fixe de 1 élément.
Contraintes de longueur : Longueur minimum de 1. Longueur maximum de 249.
Modèle :
^[^.]([a-zA-Z0-9\-_.]+)
Obligatoire : non
- TumblingWindowInSeconds
-
(Flux Kinesis et DynamoDB uniquement) Durée en secondes d’une fenêtre de traitement pour les sources d’événement des flux DynamoDB et Kinesis. Une valeur de 0 seconde indique qu’il n’y a pas de fenêtre à bascule.
Type : entier
Plage valide : Valeur minimum de 0. Valeur maximum de 900.
Obligatoire : non
Syntaxe de la réponse
HTTP/1.1 202
Content-type: application/json
{
"AmazonManagedKafkaEventSourceConfig": {
"ConsumerGroupId": "string"
},
"BatchSize": number,
"BisectBatchOnFunctionError": boolean,
"DestinationConfig": {
"OnFailure": {
"Destination": "string"
},
"OnSuccess": {
"Destination": "string"
}
},
"DocumentDBEventSourceConfig": {
"CollectionName": "string",
"DatabaseName": "string",
"FullDocument": "string"
},
"EventSourceArn": "string",
"FilterCriteria": {
"Filters": [
{
"Pattern": "string"
}
]
},
"FunctionArn": "string",
"FunctionResponseTypes": [ "string" ],
"LastModified": number,
"LastProcessingResult": "string",
"MaximumBatchingWindowInSeconds": number,
"MaximumRecordAgeInSeconds": number,
"MaximumRetryAttempts": number,
"ParallelizationFactor": number,
"Queues": [ "string" ],
"ScalingConfig": {
"MaximumConcurrency": number
},
"SelfManagedEventSource": {
"Endpoints": {
"string" : [ "string" ]
}
},
"SelfManagedKafkaEventSourceConfig": {
"ConsumerGroupId": "string"
},
"SourceAccessConfigurations": [
{
"Type": "string",
"URI": "string"
}
],
"StartingPosition": "string",
"StartingPositionTimestamp": number,
"State": "string",
"StateTransitionReason": "string",
"Topics": [ "string" ],
"TumblingWindowInSeconds": number,
"UUID": "string"
}
Eléments de réponse
Si l’action aboutit, le service renvoie une réponse HTTP 202.
Les données suivantes sont renvoyées au format JSON par le service.
- AmazonManagedKafkaEventSourceConfig
-
Paramètres de configuration spécifiques pour une source d’événements Amazon Managed Streaming for Apache Kafka (Amazon MSK).
Type : objet AmazonManagedKafkaEventSourceConfig
- BatchSize
-
Nombre maximal d’enregistrements dans chaque lot que Lambda extrait de votre flux ou file d’attente et envoie à votre fonction. Lambda transmet tous les enregistrements du lot à la fonction en un seul appel, dans la limite de charge utile pour une invocation synchrone (6 Mo).
Valeur par défaut : varie selon le service. Pour Amazon SQS, la valeur par défaut est 10. Pour tous les autres services, la valeur par défaut est 100.
Paramètre associé : lorsque vous définissez
BatchSize
sur une valeur supérieure à 10, vous devez définirMaximumBatchingWindowInSeconds
sur une valeur égale ou supérieure à 1.Type : entier
Plage valide : Valeur minimum de 1. Valeur maximum de 10 000.
- BisectBatchOnFunctionError
-
(Flux Kinesis et DynamoDB uniquement) Si la fonction renvoie une erreur, partagez le lot en deux et recommencez. La valeur par défaut est false.
Type : booléen
- DestinationConfig
-
(Kinesis, DynamoDB Streams, Amazon MSK et sources d'événements Apache Kafka autogérées uniquement) Objet de configuration qui spécifie la destination d'un événement une fois que Lambda l'a traité.
Type : objet DestinationConfig
- DocumentDBEventSourceConfig
-
Paramètres de configuration spécifiques pour une source d’événement DocumentDB.
Type : objet DocumentDBEventSourceConfig
- EventSourceArn
-
Amazon Resource Name (ARN) de la source d’événement.
Type : chaîne
Modèle :
arn:(aws[a-zA-Z0-9-]*):([a-zA-Z0-9\-])+:([a-z]{2}(-gov)?-[a-z]+-\d{1})?:(\d{12})?:(.*)
- FilterCriteria
-
Un objet qui définit les critères permettant de déterminer si Lambda doit traiter un événement. Pour plus d’informations, consultez la section Filtrage des événements Lambda.
Type : objet FilterCriteria
- FunctionArn
-
ARN de la fonction Lambda.
Type : chaîne
Modèle :
arn:(aws[a-zA-Z-]*)?:lambda:[a-z]{2}(-gov)?-[a-z]+-\d{1}:\d{12}:function:[a-zA-Z0-9-_]+(:(\$LATEST|[a-zA-Z0-9-_]+))?
- FunctionResponseTypes
-
(Flux Kinesis, DynamoDB et Amazon SQS) Liste des énumérations de type de réponse en cours appliquées au mappage des sources d’événements.
Type : tableau de chaînes
Membres du tableau : nombre minimum de 0 élément. Nombre maximum de 1 élément.
Valeurs valides :
ReportBatchItemFailures
- LastModified
-
Date à laquelle le mappage de source d’événement a été mis à jour ou a changé d’état pour la dernière fois, exprimée en secondes au format horaire Unix.
Type : horodatage
- LastProcessingResult
-
Résultat de la dernière invocation Lambda de votre fonction.
Type : chaîne
- MaximumBatchingWindowInSeconds
-
L’intervalle de temps maximal (en secondes) que prend Lambda pour collecter des enregistrements avant d’invoquer la fonction. Vous pouvez configurer
MaximumBatchingWindowInSeconds
à n’importe quelle valeur comprise entre 0 et 300 secondes par incréments de secondes.Pour les flux et les sources d’événements Amazon SQS : la fenêtre de traitement par lot par défaut est de 0 seconde. Pour les sources d’événements Amazon MSK, Apache Kafka autogérées, Amazon MQ et DocumentDB : la fenêtre de traitement par lots par défaut est de 500 ms. Parce que vous ne pouvez que changer
MaximumBatchingWindowInSeconds
par incréments de secondes, vous ne pouvez pas revenir à la fenêtre de traitement par lots par défaut de 500 ms après l’avoir modifiée. Pour restaurer la fenêtre de traitement par lots par défaut, vous devez créer un mappage de source d’événement.Paramètre associé : Pour les flux et les sources d’événements Amazon SQS, lorsque vous définissez
BatchSize
sur une valeur supérieure à 10, vous devez définirMaximumBatchingWindowInSeconds
sur une valeur égale ou supérieure à 1.Type : entier
Plage valide : Valeur minimum de 0. Valeur maximum de 300.
- MaximumRecordAgeInSeconds
-
(Flux Kinesis et DynamoDB uniquement) Ignore les enregistrements plus anciens que l’âge spécifié. La valeur par défaut est -1, qui définit l’âge maximum sur infini. Lorsque la valeur est définie sur infini, Lambda ne supprime jamais les anciens enregistrements.
Note
La valeur minimale valide pour l’âge maximal de l’enregistrement est 60 secondes. Bien que les valeurs inférieures à 60 et supérieures à -1 se situent dans la plage absolue du paramètre, elles ne sont pas autorisées
Type : entier
Plage valide : Valeur minimum de -1. Valeur maximum de 604 800.
- MaximumRetryAttempts
-
(Flux Kinesis et DynamoDB uniquement) Ignore les enregistrements après le nombre de tentatives spécifié. La valeur par défaut est -1, qui définit le nombre maximum de nouvelles tentatives sur infini. Lorsqu'il MaximumRetryAttempts est infini, Lambda réessaie les enregistrements ayant échoué jusqu'à ce que l'enregistrement expire dans la source d'événements.
Type : entier
Plage valide : Valeur minimum de -1. Valeur maximum de 10 000.
- ParallelizationFactor
-
(Flux Kinesis et DynamoDB uniquement) Nombre de lots de chaque partition à traiter simultanément. La valeur par défaut est 1.
Type : entier
Plage valide : Valeur minimum de 1. Valeur maximum de 10.
- Queues
-
(Amazon MQ) Nom de la file d’attente de destination de l’agent Amazon MQ à consommer.
Type : tableau de chaînes
Membres du tableau : nombre fixe de 1 élément.
Contraintes de longueur : Longueur minimum de 1. Longueur maximum de 1 000.
Modèle :
[\s\S]*
- ScalingConfig
-
(Amazon SQS uniquement) Configuration de dimensionnement pour la source de l’événement. Pour plus d’informations, consultez Configuration de la simultanéité maximale pour les sources d’événements Amazon SQS.
Type : objet ScalingConfig
- SelfManagedEventSource
-
Cluster Apache Kafka autogéré pour votre source d’événement.
Type : objet SelfManagedEventSource
- SelfManagedKafkaEventSourceConfig
-
Paramètres de configuration spécifiques pour une source d’événement Apache Kafka autogérée.
Type : objet SelfManagedKafkaEventSourceConfig
- SourceAccessConfigurations
-
Tableau du protocole d’authentification, composants VPC ou hôte virtuel pour sécuriser et définir votre source d’événement.
Type : tableau d’objets SourceAccessConfiguration
Membres du tableau : nombre minimum de 0 élément. Nombre maximum de 22 éléments.
- StartingPosition
-
Position de début de la lecture dans le flux. Obligatoire pour les sources d’événements Amazon Kinesis et Amazon DynamoDB Stream.
AT_TIMESTAMP
est pris en charge uniquement pour les flux Amazon Kinesis, Amazon DocumentDB, Amazon MSK et Apache Kafka autogéré.Type : chaîne
Valeurs valides :
TRIM_HORIZON | LATEST | AT_TIMESTAMP
- StartingPositionTimestamp
-
Avec
StartingPosition
défini surAT_TIMESTAMP
, l’heure à partir de laquelle doit commencer la lecture, en secondes au format horaire Unix.StartingPositionTimestamp
ne peut pas se situer dans le futur.Type : Timestamp
- State
-
État du mappage de source d’événement. Peut être
Creating
,Enabling
,Enabled
,Disabling
,Disabled
,Updating
ouDeleting
.Type : chaîne
- StateTransitionReason
-
Indique si un utilisateur ou Lambda a apporté la dernière modification au mappage de source d’événement.
Type : chaîne
- Topics
-
Nom de la rubrique Kafka.
Type : tableau de chaînes
Membres du tableau : nombre fixe de 1 élément.
Contraintes de longueur : Longueur minimum de 1. Longueur maximum de 249.
Modèle :
^[^.]([a-zA-Z0-9\-_.]+)
- TumblingWindowInSeconds
-
(Flux Kinesis et DynamoDB uniquement) Durée en secondes d’une fenêtre de traitement pour les sources d’événement des flux DynamoDB et Kinesis. Une valeur de 0 seconde indique qu’il n’y a pas de fenêtre à bascule.
Type : entier
Plage valide : Valeur minimum de 0. Valeur maximum de 900.
- UUID
-
Identifiant du mappage de source d’événement.
Type : chaîne
Erreurs
Pour plus d'informations sur les erreurs courantes pour toutes les actions, consultez Erreurs courantes.
- InvalidParameterValueException
-
L’un des paramètres dans la demande n’est pas valide.
Code d’état HTTP : 400
- ResourceConflictException
-
La ressource existe déjà ou une autre opération est en cours.
Code d’état HTTP : 409
- ResourceNotFoundException
-
La ressource spécifiée dans la demande n’existe pas.
Code d’état HTTP : 404
- ServiceException
-
Le service AWS Lambda a rencontré une erreur interne.
Code d’état HTTP : 500
- TooManyRequestsException
-
La limite de débit de demande a été dépassée. Pour plus d’informations, consultez Quotas Lambda.
Code d’état HTTP : 429
consultez aussi
Pour plus d’informations sur l’utilisation de cette API dans l’un des kits SDK AWS spécifiques au langage, consultez les ressources suivantes :