UpdateEventSourceMapping
Aktualisiert ein Ereignisquellen-Mapping. Sie können die Funktion ändern, die AWS Lambda aufruft, oder den Aufruf anhalten und später an derselben Stelle fortsetzen.
Weitere Details zur Konfiguration verschiedener Ereignisquellen finden Sie in den folgenden Themen.
Die folgenden Fehlerbehandlungsoptionen sind nur für Streamquellen (DynamoDB und Kinesis) verfügbar:
-
BisectBatchOnFunctionError
– Wenn die Funktion einen Fehler zurückgibt, teilen Sie den Stapel in zwei Teile und versuchen Sie es erneut. -
DestinationConfig
– Senden Sie verworfene Datensätze an eine Amazon SQS-Warteschlange oder ein Amazon-SNS-Thema. -
MaximumRecordAgeInSeconds
– Verwerfen Sie Datensätze, die älter als das angegebene Alter sind. Der Standardwert ist „unendlich (-1)“. Bei Festlegung auf „unendlich (-1)“ werden fehlgeschlagene Datensätze bis zum Ablauf des Datensatzes wiederholt. -
MaximumRetryAttempts
– Verwerfen Sie Datensätze nach der angegebenen Anzahl von Wiederholungen. Der Standardwert ist „unendlich (-1)“. Bei Festlegung auf „unendlich (-1)“ werden fehlgeschlagene Datensätze bis zum Ablauf des Datensatzes wiederholt. -
ParallelizationFactor
– Verarbeiten Sie gleichzeitig mehrere Batches von jedem Shard.
Informationen zur Geltung der Konfigurationsparameter zu einzelnen Ereignissquellen finden Sie in den folgenden Themen.
Anforderungssyntax
PUT /2015-03-31/event-source-mappings/UUID
HTTP/1.1
Content-type: application/json
{
"BatchSize": number
,
"BisectBatchOnFunctionError": boolean
,
"DestinationConfig": {
"OnFailure": {
"Destination": "string
"
},
"OnSuccess": {
"Destination": "string
"
}
},
"Enabled": boolean
,
"FilterCriteria": {
"Filters": [
{
"Pattern": "string
"
}
]
},
"FunctionName": "string
",
"FunctionResponseTypes": [ "string
" ],
"MaximumBatchingWindowInSeconds": number
,
"MaximumRecordAgeInSeconds": number
,
"MaximumRetryAttempts": number
,
"ParallelizationFactor": number
,
"ScalingConfig": {
"MaximumConcurrency": number
},
"SourceAccessConfigurations": [
{
"Type": "string
",
"URI": "string
"
}
],
"TumblingWindowInSeconds": number
}
URI-Anfrageparameter
Die Anforderung verwendet die folgenden URI-Parameter.
- UUID
-
Der Bezeichner des Ereignisquellen-Mappings.
Erforderlich: Ja
Anforderungstext
Die Anforderung akzeptiert die folgenden Daten im JSON-Format.
- BatchSize
-
Die maximale Anzahl von Datensätzen in jedem Batch, die Lambda aus Ihrem Stream oder Ihrer Warteschlange abruft und an Ihre Funktion sendet. Lambda übergibt alle Datensätze im Batch in einem einzigen Aufruf an die Funktion, bis zur Nutzlastgrenze für den synchronen Aufruf (6 MB).
-
Amazon Kinesis – Standard 100. Max 10.000.
-
Amazon DynamoDB Streams – Standard 100. Max 10.000.
-
Amazon Simple Queue Service – Standard 10. Bei Standardwarteschlangen beträgt der Maximalwert 10 000. Bei FIFO-Warteschlangen beträgt der Maximalwert 10.
-
Amazon Managed Streaming for Apache Kafka – Standard 100. Max 10.000.
-
Selbstverwaltetes Apache Kafka – Standard 100. Max 10.000.
-
Amazon MQ (ActiveMQ und RabbitMQ) – Standard 100. Max 10.000.
Typ: Ganzzahl
Gültiger Bereich: Mindestwert 1. Maximaler Wert von 10000.
Required: No
-
- BisectBatchOnFunctionError
-
(Nur Streams) Wenn die Funktion einen Fehler zurückgibt, teilen Sie den Batch in zwei Teile und versuchen Sie es erneut.
Typ: Boolesch
Required: No
- DestinationConfig
-
(Nur Streams) Ein Ziel der Amazon-SQS-Standardwarteschlange oder des Amazon-SNS-Standardthemas für verworfene Datensätze.
Typ: DestinationConfig Objekt
Required: No
- Enabled
-
Wenn der Wert „True“ ist, ist das Ereignisquellen-Mapping aktiv. Wenn der Wert „False“ ist, unterbricht Lambda Abfragen und Aufrufe.
Standard: True
Typ: Boolesch
Required: No
- FilterCriteria
-
Ein Objekt, das die Filterkriterien definiert, die bestimmen, ob Lambda ein Ereignis verarbeiten soll. Weitere Informationen finden Sie unter Lambda-Ereignisfilterung.
Typ: FilterCriteria Objekt
Required: No
- FunctionName
-
Der Name der Lambda-Funktion.
Name Formate
-
Funktionsname –
MyFunction
. -
Funktions-ARN –
arn:aws:lambda:us-west-2:123456789012:function:MyFunction
. -
Versions- oder Alias-ARN –
arn:aws:lambda:us-west-2:123456789012:function:MyFunction:PROD
. -
Partielle ARN –
123456789012:function:MyFunction
.
Die Längenbeschränkung gilt nur für den gesamten ARN. Wenn Sie nur den Funktionsnamen angeben, ist seine Länge auf 64 Zeichen begrenzt.
Typ: Zeichenfolge
Längenbeschränkungen: Minimale Länge von 1. Maximale Länge beträgt 140 Zeichen.
Pattern:
(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-_]+))?
Erforderlich: Nein
-
- FunctionResponseTypes
-
(Streams und Amazon SQS) Eine Liste der Enums des aktuellen Antworttyps, die auf die Ereignisquellenzuordnung angewendet werden.
Typ: Zeichenfolge-Array
Array-Mitglieder: Die Mindestanzahl beträgt 0 Elemente. Die maximale Anzahl beträgt 1 Element.
Zulässige Werte:
ReportBatchItemFailures
Required: No
- MaximumBatchingWindowInSeconds
-
Die maximale Zeit in Sekunden, die Lambda mit dem Sammeln von Datensätzen verbringt, bevor die Funktion aufgerufen wird. Sie können
MaximumBatchingWindowInSeconds
auf einen beliebigen Wert von 0 Sekunden bis 300 Sekunden in Sekundenschritten einstellen.Für Streams und Amazon-SQS-Ereignisquellen beträgt das Standard-Batching-Fenster 0 Sekunden. Für Amazon MSK-, selbstverwaltete Apache-Kafka- und Amazon MQ-Ereignisquellen beträgt das standardmäßige Batching-Fenster 500 ms. Da Sie
MaximumBatchingWindowInSeconds
nur in Sekundenschritten ändern können, ist zu beachten, dass Sie nach der Änderung nicht zum Standard-Batching-Fenster von 500 ms zurückkehren können. Um das Standard-Batch-Fenster wiederherzustellen, müssen Sie eine neue Ereignisquellenzuordnung erstellen.Zugehörige Einstellung: Wenn Sie für Streams und Amazon-SQS-Ereignisquellen
BatchSize
auf einen Wert größer als 10 setzen, müssen SieMaximumBatchingWindowInSeconds
auf mindestens 1 setzen.Typ: Ganzzahl
Gültiger Bereich: Mindestwert 0. Maximaler Wert von 300.
Required: No
- MaximumRecordAgeInSeconds
-
(Nur Streams) Verwirft Datensätze, die älter als das angegebene Alter sind. Der Standardwert ist „unendlich (-1)“.
Typ: Ganzzahl
Gültiger Bereich: Mindestwert -1. Maximaler Wert von 604800.
Required: No
- MaximumRetryAttempts
-
(Nur Streams) Verwirft Datensätze nach der angegebenen Anzahl von Wiederholungen. Der Standardwert ist „unendlich (-1)“. Bei Festlegung auf „unendlich (-1)“ werden fehlgeschlagene Datensätze bis zum Ablauf des Datensatzes wiederholt.
Typ: Ganzzahl
Gültiger Bereich: Mindestwert -1. Maximaler Wert von 10000.
Required: No
- ParallelizationFactor
-
(Nur Streams) Die Anzahl der Stapel, die von jeder Shard gleichzeitig verarbeitet werden sollen.
Typ: Ganzzahl
Gültiger Bereich: Mindestwert 1. Maximalwert 10.
Required: No
- ScalingConfig
-
(Nur Amazon SQS) Die Skalierungskonfiguration für die Ereignisquelle. Weitere Informationen finden Sie unter Konfigurieren der maximalen Gleichzeitigkeit für Amazon-SQS-Ereignisquellen.
Typ: ScalingConfig Objekt
Required: No
- SourceAccessConfigurations
-
Ein Array von Authentifizierungsprotokollen oder VPC-Komponenten, die zum Schutz Ihrer Ereignisquelle erforderlich sind.
Typ: Array von SourceAccessConfiguration-Objekten
Array-Mitglieder: Die Mindestanzahl beträgt 0 Elemente. Die maximale Anzahl beträgt 22 Elemente.
Required: No
- TumblingWindowInSeconds
-
(Nur Streams) Die Dauer eines Verarbeitungsfensters in Sekunden. Die Spanne liegt zwischen 1 und 900 Sekunden.
Typ: Ganzzahl
Gültiger Bereich: Mindestwert 0. Maximaler Wert von 900.
Erforderlich: Nein
Antwortsyntax
HTTP/1.1 202
Content-type: application/json
{
"AmazonManagedKafkaEventSourceConfig": {
"ConsumerGroupId": "string"
},
"BatchSize": number,
"BisectBatchOnFunctionError": boolean,
"DestinationConfig": {
"OnFailure": {
"Destination": "string"
},
"OnSuccess": {
"Destination": "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"
}
Antwortelemente
Wenn die Aktion erfolgreich ist, sendet der Service eine HTTP 202-Antwort zurück.
Die folgenden Daten werden vom Service im JSON-Format zurückgegeben.
- AmazonManagedKafkaEventSourceConfig
-
Spezifische Konfigurationseinstellungen für eine Amazon Managed Streaming für Apache Kafka (Amazon MSK)-Ereignisquelle.
Typ: AmazonManagedKafkaEventSourceConfig Objekt
- BatchSize
-
Die maximale Anzahl von Datensätzen in jedem Batch, die Lambda aus Ihrem Stream oder der Warteschlange abruft und an Ihre Funktion sendet. Lambda übergibt alle Datensätze im Batch in einem einzigen Aufruf an die Funktion, bis zur Nutzlastgrenze für den synchronen Aufruf (6 MB).
Standardwert: Variiert je nach Service. Bei Amazon SQS ist der Standardwert 10. Für alle anderen Services ist der Standardwert 100.
Zugehörige Einstellung: Wenn Sie
BatchSize
auf einen Wert größer als 10 setzen, müssen SieMaximumBatchingWindowInSeconds
auf mindestens 1 setzen.Typ: Ganzzahl
Gültiger Bereich: Mindestwert 1. Maximaler Wert von 10000.
- BisectBatchOnFunctionError
-
(Nur Streams) Wenn die Funktion einen Fehler zurückgibt, teilen Sie den Batch in zwei Teile und versuchen Sie es erneut. Der Standardwert von "false".
Typ: Boolesch
- DestinationConfig
-
(Nur Streams) Ein Ziel der Amazon-SQS-Warteschlange oder des Amazon-SNS-Themas für verworfene Datensätze.
Typ: DestinationConfig Objekt
- EventSourceArn
-
Der Amazon-Ressourcenname (ARN) der Ereignis-Quelle.
Typ: Zeichenfolge
Pattern:
arn:(aws[a-zA-Z0-9-]*):([a-zA-Z0-9\-])+:([a-z]{2}(-gov)?-[a-z]+-\d{1})?:(\d{12})?:(.*)
- FilterCriteria
-
Ein Objekt, das die Filterkriterien definiert, die bestimmen, ob Lambda ein Ereignis verarbeiten soll. Weitere Informationen finden Sie unter Lambda-Ereignisfilterung.
Typ: FilterCriteria Objekt
- FunctionArn
-
ARN der Lambda-Funktion.
Typ: Zeichenfolge
Pattern:
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
-
(Streams und Amazon SQS) Eine Liste der Enums des aktuellen Antworttyps, die auf die Ereignisquellenzuordnung angewendet werden.
Typ: Zeichenfolge-Array
Array-Mitglieder: Die Mindestanzahl beträgt 0 Elemente. Die maximale Anzahl beträgt 1 Element.
Zulässige Werte:
ReportBatchItemFailures
- LastModified
-
Das Datum, an dem das Ereignisquellen-Mapping zuletzt aktualisiert wurde oder dessen Status geändert wurde, in Unix-Zeitsekunden.
Typ: Zeitstempel
- LastProcessingResult
-
Das Ergebnis des letzten Lambda-Aufrufs Ihrer Funktion.
Typ: Zeichenfolge
- MaximumBatchingWindowInSeconds
-
Die maximale Zeit in Sekunden, die Lambda mit dem Sammeln von Datensätzen verbringt, bevor die Funktion aufgerufen wird. Sie können
MaximumBatchingWindowInSeconds
auf einen beliebigen Wert von 0 Sekunden bis 300 Sekunden in Sekundenschritten einstellen.Für Streams und Amazon-SQS-Ereignisquellen beträgt das Standard-Batching-Fenster 0 Sekunden. Für Amazon MSK-, selbstverwaltete Apache-Kafka- und Amazon MQ-Ereignisquellen beträgt das standardmäßige Batching-Fenster 500 ms. Da Sie
MaximumBatchingWindowInSeconds
nur in Sekundenschritten ändern können, ist zu beachten, dass Sie nach der Änderung nicht zum Standard-Batching-Fenster von 500 ms zurückkehren können. Um das Standard-Batch-Fenster wiederherzustellen, müssen Sie eine neue Ereignisquellenzuordnung erstellen.Zugehörige Einstellung: Wenn Sie für Streams und Amazon-SQS-Ereignisquellen
BatchSize
auf einen Wert größer als 10 setzen, müssen SieMaximumBatchingWindowInSeconds
auf mindestens 1 setzen.Typ: Ganzzahl
Gültiger Bereich: Mindestwert 0. Maximaler Wert von 300.
- MaximumRecordAgeInSeconds
-
(Nur Streams) Verwirft Datensätze, die älter als das angegebene Alter sind. Der Standardwert ist -1, was das maximale Alter auf unbegrenzt setzt. Wenn der Wert auf unendlich gesetzt ist, verwirft Lambda niemals alte Datensätze.
Typ: Ganzzahl
Gültiger Bereich: Mindestwert -1. Maximaler Wert von 604800.
- MaximumRetryAttempts
-
(Nur Streams) Verwirft Datensätze nach der angegebenen Anzahl von Wiederholungen. Der Standardwert ist -1, wodurch die maximale Anzahl von Wiederholversuchen auf unendlich eingestellt ist. Wenn MaximumRetryAttempts unendlich ist, versucht Lambda fehlgeschlagene Datensätze erneut, bis der Datensatz in der Ereignisquelle abläuft.
Typ: Ganzzahl
Gültiger Bereich: Mindestwert -1. Maximaler Wert von 10000.
- ParallelizationFactor
-
(Nur Streams) Die Anzahl der Batches, die von jeder Shard gleichzeitig verarbeitet werden sollen. Der Standardwert lautet 1.
Typ: Ganzzahl
Gültiger Bereich: Mindestwert 1. Maximalwert 10.
- Queues
-
(Amazon MQ) Der Name der zu verwendenden Zielwarteschlange des Amazon-MQ-Brokers.
Typ: Zeichenfolge-Array
Array-Mitglieder: Feste Anzahl von 1 Element.
Längenbeschränkungen: Minimale Länge von 1. Höchstlänge = 1000 Zeichen.
Pattern:
[\s\S]*
- ScalingConfig
-
(Nur Amazon SQS) Die Skalierungskonfiguration für die Ereignisquelle. Weitere Informationen finden Sie unter Konfigurieren der maximalen Gleichzeitigkeit für Amazon-SQS-Ereignisquellen.
Typ: ScalingConfig Objekt
- SelfManagedEventSource
-
Der selbstverwaltete Apache-Kafka-Cluster für Ihre Ereignisquelle.
Typ: SelfManagedEventSource Objekt
- SelfManagedKafkaEventSourceConfig
-
Spezifische Konfigurationseinstellungen für eine selbstverwaltete Apache-Kafka-Ereignisquelle.
Typ: SelfManagedKafkaEventSourceConfig Objekt
- SourceAccessConfigurations
-
Ein Array des Authentifizierungsprotokolls, der VPC-Komponenten oder des virtuellen Hosts zum Sichern und Definieren Ihrer Ereignisquelle.
Typ: Array von SourceAccessConfiguration-Objekten
Array-Mitglieder: Die Mindestanzahl beträgt 0 Elemente. Die maximale Anzahl beträgt 22 Elemente.
- StartingPosition
-
Die Position im Stream, an der mit dem Lesen begonnen wird. Erforderlich für Amazon-Kinesis-, Amazon-DynamoDB- und Amazon-MSK-Stream-Quellen.
AT_TIMESTAMP
wird nur für Amazon-Kinesis-Streams unterstützt.Typ: Zeichenfolge
Zulässige Werte:
TRIM_HORIZON | LATEST | AT_TIMESTAMP
- StartingPositionTimestamp
-
Wenn
StartingPosition
aufAT_TIMESTAMP
gesetzt ist, die Zeit, ab der mit dem Lesen begonnen werden soll, in Unix-Zeitsekunden.Typ: Zeitstempel
- State
-
Der Status des Ereignisquellen-Mappings Dabei kann es sich um einen der folgenden handeln:
Creating
,Enabling
,Enabled
,Disabling
,Disabled
,Updating
oderDeleting
.Typ: Zeichenfolge
- StateTransitionReason
-
Gibt an, ob ein Benutzer oder Lambda die letzte Änderung am Ereignisquellen-Mapping vorgenommen hat.
Typ: Zeichenfolge
- Topics
-
Der Name des Kafka-Themas.
Typ: Zeichenfolge-Array
Array-Mitglieder: Feste Anzahl von 1 Element.
Längenbeschränkungen: Minimale Länge von 1. Höchstlänge = 249 Zeichen.
Pattern:
^[^.]([a-zA-Z0-9\-_.]+)
- TumblingWindowInSeconds
-
(Nur Streams) Die Dauer eines Verarbeitungsfensters in Sekunden. Der Bereich liegt zwischen 0 und 900 Sekunden.
Typ: Ganzzahl
Gültiger Bereich: Mindestwert 0. Maximaler Wert von 900.
- UUID
-
Der Bezeichner des Ereignisquellen-Mapping.
Typ: Zeichenfolge
Fehler
- InvalidParameterValueException
-
Einer der Parameter in der Anfrage ist ungültig.
HTTP Status Code: 400
- ResourceConflictException
-
Die Ressource ist bereits vorhanden, oder ein anderer Vorgang ist im Gange.
HTTP-Statuscode: 409
- ResourceInUseException
-
Der Vorgang steht in Konflikt mit der Verfügbarkeit der Ressource. Sie haben beispielsweise versucht, eine Zuordnung von Ereignisquellen im Status CREATING zu aktualisieren, oder Sie haben versucht, eine Ereignisquellenzuordnung im Status UPDATING zu löschen.
HTTP Status Code: 400
- ResourceNotFoundException
-
Die in der Anforderung angegebene Ressource ist nicht vorhanden.
HTTP Status Code: 404
- ServiceException
-
Beim Service AWS Lambda trat ein interner Fehler auf.
HTTP Status Code: 500
- TooManyRequestsException
-
Der Durchsatz einer Anforderung wurde überschritten. Weitere Informationen finden Sie unter Lambda-Kontingente.
HTTP-Statuscode: 429
Weitere Informationen finden Sie unter:
Weitere Informationen zur Verwendung dieser API in einem der sprachspezifischen AWS-SDKs finden Sie unter: