aws-apigateway-kinesisstream - Costrutti delle soluzioni AWS

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à.

aws-apigateway-kinesisstream

Tutte le classi sono in fase di sviluppo attivo e soggette a modifiche o rimozione non compatibili con le versioni precedenti in qualsiasi versione futura. Questi non sono soggetti allaSemantic VersioningModello. Ciò significa che, mentre è possibile utilizzarli, potrebbe essere necessario aggiornare il codice sorgente quando si esegue l'aggiornamento a una versione più recente di questo pacchetto.

Nota: Per garantire la corretta funzionalità, i pacchetti AWS Solutions Constructs e i pacchetti AWS CDK nel progetto devono essere della stessa versione.

Linguaggio Pacchetto
Python
aws_solutions_constructs.aws_apigateway_kinesisstreams
TypeScript
@aws-solutions-constructs/aws-apigateway-kinesisstreams
Java
software.amazon.awsconstructs.services.apigatewaykinesisstreams

Overview

Questo modello implementa un'Amazon API Gateway API connessa a un flusso di dati Amazon Kinesis.

Ecco una definizione di modello distribuibile minima in TypeScript:

import { ApiGatewayToKinesisStreams, ApiGatewayToKinesisStreamsProps } from '@aws-solutions-constructs/aws-apigateway-kinesisstreams'; new ApiGatewayToKinesisStreams(this, 'test-apigw-kinesis', {});

Initializer

new ApiGatewayToKinesisStreams(scope: Construct, id: string, props: ApiGatewayToKinesisStreamsProps);

Parametri

Puntelli di costruzione modelli

Nome Tipo Descrizione
ApiGatewayProps? api.RestApiProps Accessori di scena facoltativi forniti dall'utente per sovrascrivere gli oggetti di scena predefiniti per l'API REST del gateway API.
PutRecordRequestTemplate? string Modello di richiesta API Gateway per l'azione PutRecord. Se non viene fornito, verrà utilizzato uno predefinito.
PutRecordRequestModel? api.ModelOptions Modello di richiesta API Gateway per l'azione PutRecord. Se non viene fornito, ne verrà creato uno predefinito.
PutRecordsRequestTemplate? string Modello di richiesta API Gateway per l'azione PutRecords. Se non viene fornito, verrà utilizzato uno predefinito.
PutRecordRequestModel? api.ModelOptions Modello di richiesta API Gateway per l'azione PutRecords. Se non viene fornito, ne verrà creato uno predefinito.
StreamObj esistente? kinesis.Stream Istanza esistente di Kinesis Stream, fornendo sia questo chekinesisStreamPropsIn caso contrario, si verifica un errore
KinesisStreamProps? kinesis.StreamProps Puntelli opzionali forniti dall'utente per sovrascrivere gli oggetti di scena predefiniti per il flusso Kinesis.
LogGroupProps? logs.LogGroupProps Opzionali forniti dall'utente per sovrascrivere gli oggetti di scena predefiniti per il gruppo di log CloudWatch Logs.

Proprietà modelli

Nome Tipo Descrizione
ApiGateway api.RestApi Restituisce un'istanza dell'API REST del gateway API creata dal modello.
ApiGatewayRole iam.Role Restituisce un'istanza del ruolo IAM creato dal pattern per l'API REST del gateway API.
APigatewayCloudWatchRole iam.Role Restituisce un'istanza del ruolo IAM creato dal pattern che abilita la registrazione degli accessi dall'API REST del gateway API a CloudWatch.
ApiGatewayLogGroup logs.LogGroup Restituisce un'istanza del gruppo di log creato dal modello a cui vengono inviati i log di accesso API REST del API Gateway API.
KinesisStream kinesis.Stream Restituisce un'istanza del flusso Kinesis creato dal pattern.

Uso dell'API di esempio

Metodo Percorso della richiesta Corpo della richiesta Azione coda Descrizione
POST /record
{ "data": "Hello World!", "partitionKey": "pk001" }
kinesis:PutRecord Scrive un singolo record di dati nel flusso.
POST /records
{ "records": [ { "data": "abc", "partitionKey": "pk001" }, { "data": "xyz", "partitionKey": "pk001" } ] }
kinesis:PutRecords Scrive più record di dati nel flusso in una singola chiamata.

Impostazioni predefinite

L'implementazione predefinita di questo modello senza sostituzioni imposterà i seguenti valori predefiniti:

Amazon API Gateway

  • Distribuzione di un endpoint API ottimizzato per gli edge.

  • Abilitare la registrazione CloudWatch per API Gateway.

  • Configurare il ruolo IAM di accesso ai privilegi minimi per il API Gateway.

  • Impostare l'AuthorizationType predefinito per tutti i metodi API su IAM.

  • Abilitare il tracciamento X-Ray.

  • Convalidare il corpo della richiesta prima di passare i dati a Kinesis.

Amazon Kinesis Data Stream

  • Configurare il ruolo IAM di accesso ai privilegi minimi per il flusso Kinesis.

  • Abilita la crittografia lato server per Kinesis Stream utilizzando AWS Managed KMS Key.

Architecture

GitHub

Per visualizzare il codice per questo modello, creare/visualizzare problemi e richieste pull e altro ancora:
@aws -solutions-constructs/aws-apigateway-kinesisstream