Elabora gli eventi DynamoDB - AWS Serverless Application Model

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

Elabora gli eventi DynamoDB

Con questa applicazione di esempio, si basa su ciò che è stato appreso nella panoramica e nella guida rapida e si installa un'altra applicazione di esempio. Questa applicazione è costituita da una funzione Lambda richiamata da una sorgente di eventi di tabella DynamoDB. La funzione Lambda è molto semplice: registra i dati trasmessi tramite il messaggio di origine dell'evento.

Questo esercizio mostra come imitare i messaggi di origine degli eventi che vengono passati alle funzioni Lambda quando vengono richiamate.

Prima di iniziare

Assicurati di aver completato la configurazione richiesta in. Installazione del AWS SAMCLI

Passaggio 1: inizializza l'applicazione

In questa sezione, si scarica il pacchetto dell'applicazione, che consiste in un AWS SAM modello e un codice dell'applicazione.

Per inizializzare l'applicazione
  1. Eseguite il comando seguente al AWS SAM CLI prompt dei comandi.

    sam init \ --location gh:aws-samples/cookiecutter-aws-sam-dynamodb-python \ --no-input

    Nota che gh: nel comando precedente viene espanso all' GitHub URLhttps://github.com/.

  2. Esaminare il contenuto della directory creata dal comando (dynamodb_event_reader/):

    • template.yaml— Definisce due AWS risorse necessarie all'applicazione Read DynamoDB: una funzione Lambda e una tabella DynamoDB. Il modello definisce anche la mappatura tra le due risorse.

    • read_dynamodb_event/directory — Contiene il codice dell'applicazione DynamoDB.

Fase 2: Testare l'applicazione localmente

Per i test locali, usa per AWS SAM CLI generare un evento DynamoDB di esempio e richiamare la funzione Lambda:

sam local generate-event dynamodb update | sam local invoke --event - ReadDynamoDBEvent

Il generate-event comando crea un messaggio sorgente dell'evento di test come i messaggi che vengono creati quando tutti i componenti vengono distribuiti nel Cloud. AWS Questo messaggio di origine dell'evento viene reindirizzato alla funzione Lambda ReadDynamo dbEvent.

Verifica che i messaggi previsti vengano stampati sulla console, in base al codice sorgente in. app.py

Fase 3: Package dell'applicazione

Dopo aver testato l'applicazione localmente, si utilizza AWS SAM CLI per creare un pacchetto di distribuzione, da utilizzare per distribuire l'applicazione nel AWS cloud.

Per creare un pacchetto di distribuzione Lambda
  1. Creare un bucket S3 nella posizione in cui si desidera salvare il codice nel pacchetto. Se si desidera utilizzare un bucket S3 esistente, ignorare questo passaggio.

    aws s3 mb s3://bucketname
  2. Crea il pacchetto di distribuzione eseguendo il seguente comando package CLI al prompt dei comandi.

    sam package \ --template-file template.yaml \ --output-template-file packaged.yaml \ --s3-bucket bucketname

    Il nuovo file modello viene specificato quando packaged.yaml si distribuisce l'applicazione nel passaggio successivo.

Fase 4: Distribuire l'applicazione

Ora che hai creato il pacchetto di distribuzione, lo usi per distribuire l'applicazione nel cloud. AWS Quindi testate l'applicazione.

Per distribuire l'applicazione serverless nel cloud AWS
  • In AWS SAMCLI, utilizza il comando deploy CLI per distribuire tutte le risorse definite nel modello.

    sam deploy \ --template-file packaged.yaml \ --stack-name sam-app \ --capabilities CAPABILITY_IAM \ --region us-east-1

    Nel comando, il --capabilities parametro consente di AWS CloudFormation creare un ruolo IAM.

    AWS CloudFormationcrea le AWS risorse definite nel modello. È possibile accedere ai nomi di queste risorse nella AWS CloudFormation console.

Per testare l'applicazione serverless nel Cloud AWS
  1. Aprire la console DynamoDB.

  2. Inserisci un record nella tabella che hai appena creato.

  3. Vai alla scheda Metriche della tabella e scegli Visualizza tutte le CloudWatch metriche. Nella CloudWatch console, scegli Registri per poter visualizzare l'output del registro.

Passaggi successivi

Il AWS SAM GitHub repository contiene ulteriori esempi di applicazioni da scaricare e sperimentare. Per accedere a questo repository, consulta AWS SAMesempi di applicazioni.