View a markdown version of this page

Obiettivi Amazon EventBridge Pipes - Amazon EventBridge

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Obiettivi Amazon EventBridge Pipes

Puoi inviare i dati presenti nella tua pipe a una destinazione specifica. È possibile configurare i seguenti obiettivi quando si imposta una pipe in EventBridge:

Parametri di destinazione

Alcuni servizi di destinazione non inviano il payload dell'evento al target, ma trattano l'evento come un trigger per richiamare un'API specifica. EventBridge utilizza il PipeTargetParameters per specificare quali informazioni vengono inviate a quell'API. Questi sono i seguenti:

  • Destinazioni API: i dati inviati a una destinazione API devono corrispondere alla struttura dell'API. È necessario utilizzare l'oggetto InputTemplate per assicurarsi che i dati siano strutturati correttamente. Se vuoi includere il payload dell'evento originale, fai riferimento a esso in InputTemplate.

  • Gateway API: i dati inviati a Gateway API devono corrispondere alla struttura dell'API. È necessario utilizzare l'oggetto InputTemplate per assicurarsi che i dati siano strutturati correttamente. Se vuoi includere il payload dell'evento originale, fai riferimento a esso in InputTemplate.

  • PipeTargetRedshiftDataParameters (cluster delle API dati di Amazon Redshift)

  • PipeTargetSageMakerPipelineParameters(Amazon SageMaker Runtime Model Building Pipelines)

  • PipeTargetBatchJobParameters (AWS Batch)

Nota

EventBridge non supporta tutta la sintassi JSON Path e la valuta in fase di esecuzione. La sintassi supportata include:

  • notazione a punti (ad esempio, $.detail)

  • trattini

  • caratteri di sottolineatura

  • caratteri alfanumerici

  • indici array

  • caratteri jolly (*)

  • barre in avanti

Parametri di percorso dinamici

EventBridge I parametri target di Pipes supportano la sintassi del percorso JSON dinamico opzionale. È possibile utilizzare questa sintassi per specificare percorsi JSON anziché valori statici (ad esempio $.detail.state). L'intero valore deve essere un percorso JSON, non solo una parte di esso. Ad esempio, RedshiftParameters.Sql può essere $.detail.state ma non può essere "SELECT * FROM $.detail.state". Questi percorsi vengono sostituiti dinamicamente al runtime con i dati del payload di eventi nel percorso specificato. I parametri di percorso dinamici non possono fare riferimento a valori nuovi o trasformati risultanti dalla trasformazione dell'input. La sintassi supportata per i percorsi JSON dei parametri dinamici è la stessa utilizzata per la trasformazione dell'input. Per ulteriori informazioni, consulta Trasformazione degli input di Amazon EventBridge Pipes.

La sintassi dinamica può essere utilizzata su tutti i campi stringa non enum di tutti i parametri di arricchimento e destinazione di EventBridge Pipes, ad eccezione di:

Ad esempio, per impostare un target Kinesis pipe su una chiave personalizzata PartitionKey dell'evento sorgente, impostate su: KinesisTargetParameter.PartitionKey

  • "$.data.someKey" per un'origine Kinesis

  • "$.body.someKey" per un'origine Amazon SQS

Quindi, se il payload dell'evento è una stringa JSON valida, ad esempio{"someKey":"someValue"}, EventBridge estrae il valore dal percorso JSON e lo utilizza come parametro di destinazione. In questo esempio, EventBridge imposterei PartitionKey Kinesis su "». someValue

Permissions

Per effettuare chiamate API sulle risorse che possiedi, EventBridge Pipes necessita dell'autorizzazione appropriata. EventBridge PIPEs utilizza il ruolo IAM specificato sulla pipe per l'arricchimento e il targeting delle chiamate utilizzando l'entità pipes.amazonaws.com IAM.

Richiamo di destinazioni

EventBridge ha i seguenti modi per richiamare un target:

  • In modo sincrono (tipo di chiamata impostato suREQUEST_RESPONSE): EventBridge attende una risposta dal target prima di procedere.

  • In modo asincrono (tipo di chiamata impostato suFIRE_AND_FORGET): non attende una risposta prima di procedere. EventBridge

Per impostazione predefinita, per le pipe con sorgenti ordinate, EventBridge richiama i target in modo sincrono perché è necessaria una risposta dal target prima di passare all'evento successivo.

Se una fonte non impone l'ordine, ad esempio una coda Amazon SQS standard, EventBridge può richiamare una destinazione supportata in modo sincrono o asincrono.

Con le funzioni Lambda e le macchine a stati Step Functions, puoi configurare il tipo di invocazione.

Nota

Per le macchine a stati Step Functions, i Flussi di lavoro standard devono essere richiamati in modo asincrono.

Limiti di dimensione del payload

EventBridge Pipes supporta payload fino a 6 MB. Tuttavia, il limite effettivo della dimensione del carico utile è determinato da ciò che è inferiore: il limite di 6 MB di Pipes o la dimensione massima del carico utile del servizio di destinazione. Ad esempio:

  • Le funzioni Lambda supportano payload fino a 6 MB, quindi il limite effettivo per una pipe destinata a Lambda è di 6 MB.

  • EventBridge gli event bus supportano payload fino a 1 MB, quindi il limite effettivo per un pipe destinato a un event bus è di 1 MB.

  • Le macchine a stati Step Functions supportano payload fino a 256 KB, quindi il limite effettivo per una pipe destinata a Step Functions è di 256 KB.

Quando configurate la pipe, assicuratevi che la dimensione del payload, comprese eventuali trasformazioni applicate mediante arricchimento o trasformazione di input, non superi la dimensione massima del payload del target.

AWS Batch code di lavoro, specifiche dell'obiettivo

Tutti i AWS Batch submitJob parametri sono configurati esplicitamente con eBatchParameters, come tutti i parametri Pipe, possono essere dinamici utilizzando un percorso JSON al payload degli eventi in arrivo.

CloudWatch Registra le specifiche del gruppo e del target

Indipendentemente che si utilizzi o meno un trasformatore di input, il payload di eventi viene utilizzato come messaggio di log. Puoi impostare Timestamp (o LogStreamName esplicito della tua destinazione) tramite CloudWatchLogsParameters in PipeTarget. Come tutti i parametri pipe, questi parametri possono essere dinamici quando si utilizza un percorso JSON al payload di eventi in entrata.

Specifiche dell'obiettivo delle attività di Amazon ECS

Tutti i parametri runTask di Amazon ECS sono configurati esplicitamente tramite EcsParameters. Come tutti i parametri pipe, questi parametri possono essere dinamici quando si utilizza un percorso JSON al payload di eventi in entrata.

Specifiche degli obiettivi del flusso di lavoro delle funzioni Lambda e Step Functions

Lambda e Step Functions non dispongono di un'API batch. Per elaborare batch di eventi da un'origine pipe, il batch viene convertito in un array JSON e passato come input alla destinazione Lambda o Step Functions. Per ulteriori informazioni, consulta Dosaggio e concorrenza di Amazon EventBridge Pipes.

Timestream per le specifiche degli obiettivi LiveAnalytics della tabella

Le considerazioni relative alla specificazione di una LiveAnalytics tabella Timestream for come destinazione della pipe includono:

  • Gli stream Apache Kafka (inclusi quelli provenienti da Amazon MSK o fornitori di terze parti) non sono attualmente supportati come sorgenti pipe.

  • Se hai specificato uno DynamoDB stream Kinesis or come sorgente pipe, devi specificare il numero di tentativi di nuovo tentativo.

    Per ulteriori informazioni, consulta Configurazione delle impostazioni della pipe.

EventBridge specifiche della destinazione del bus di eventi

Quando si configura un EventBridge event bus come pipe target, il payload proveniente dalla pipe viene automaticamente inserito nella detail sezione dell' EventBridge evento. PipeTargetEventBridgeEventBusParametersUsalo per configurare gli eventi source e i detail-type campi. Entrambi i campi supportano la sintassi dinamica del percorso JSON per estrarre valori dal payload dell'evento. Ad esempio, imposta su o suSource. $.body.source DetailType $.data.eventType Puoi anche utilizzare i trasformatori di input per modificare la struttura dell'evento prima che venga inserito nel detail campo. Per ulteriori informazioni, consulta Trasformazione degli input di Amazon EventBridge Pipes.