Sélectionner vos préférences de cookies

Nous utilisons des cookies essentiels et des outils similaires qui sont nécessaires au fonctionnement de notre site et à la fourniture de nos services. Nous utilisons des cookies de performance pour collecter des statistiques anonymes afin de comprendre comment les clients utilisent notre site et d’apporter des améliorations. Les cookies essentiels ne peuvent pas être désactivés, mais vous pouvez cliquer sur « Personnaliser » ou « Refuser » pour refuser les cookies de performance.

Si vous êtes d’accord, AWS et les tiers approuvés utiliseront également des cookies pour fournir des fonctionnalités utiles au site, mémoriser vos préférences et afficher du contenu pertinent, y compris des publicités pertinentes. Pour accepter ou refuser tous les cookies non essentiels, cliquez sur « Accepter » ou « Refuser ». Pour effectuer des choix plus détaillés, cliquez sur « Personnaliser ».

Traitez les événements DynamoDB avec AWS SAM

Mode de mise au point
Traitez les événements DynamoDB avec AWS SAM - AWS Serverless Application Model

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.

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.

Avec cet exemple d'application, vous construisez en utilisant ce que vous avez appris dans la présentation et le Guide de démarrage rapide, et installez un autre exemple d'application. Cette application se compose d'une fonction Lambda appelée par une source d'événement de table DynamoDB. La fonction Lambda est très simple : elle journalise les données qui ont été transmises par le message source de l'événement.

Cet exercice vous montre comment imiter les messages source d'événements qui sont transmis aux fonctions Lambda lorsqu'elles sont appelées.

Avant de commencer

Assurez-vous que vous avez terminé la configuration requise dans Installez le AWS SAM CLI.

Étape 1 : initialiser l'application

Dans cette section, vous allez télécharger le package de candidature, qui se compose d'un AWS SAM modèle et d'un code d'application.

Pour initialiser l'application
  1. Exécutez la commande suivante sur AWS SAM CLI invite de commande.

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

    Notez que gh: dans la commande ci-dessus, elle est étendue à l' GitHub URLhttps://github.com/.

  2. Vérifiez le contenu du répertoire créé par la commande (dynamodb_event_reader/) :

    • template.yaml— Définit deux AWS ressources dont l'application Read DynamoDB a besoin : une fonction Lambda et une table DynamoDB. Le modèle définit également le mappage entre les deux ressources.

    • Répertoire read_dynamodb_event/ – Contient le code d'application DynamoDB.

Étape 2 : tester l'application localement

Pour les tests locaux, utilisez AWS SAM CLI pour générer un exemple d'événement DynamoDB et appeler la fonction Lambda :

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

La generate-event commande crée un message source d'événement de test, comme les messages créés lorsque tous les composants sont déployés dans le AWS cloud. Ce message de source d'événement est redirigé vers la fonction ReadDynamo DBEvent Lambda.

Vérifiez que les messages attendus soient imprimés sur la console, en fonction du code source dans app.py.

Étape 3 : créer le package de l'application

Après avoir testé votre application localement, vous utilisez AWS SAM CLI pour créer un package de déploiement que vous utiliserez pour déployer l'application AWS dans le cloud.

Pour créer un package de déploiement Lambda
  1. Créez un compartiment S3 à l'emplacement où vous souhaitez enregistrer le code empaqueté. Si vous souhaitez utiliser un compartiment S3 existant, ignorez cette étape.

    aws s3 mb s3://bucketname
  2. Créez le package de déploiement en exécutant la commande CLI package suivante.

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

    Vous spécifiez le nouveau fichier de modèle, packaged.yaml, lorsque vous déployez l'application dans l'étape suivante.

Étape 4 : déployer l'application

Maintenant que vous avez créé le package de déploiement, vous l'utilisez pour déployer l'application AWS dans le cloud. Vous testez ensuite l'application.

Pour déployer l'application sans serveur dans le cloud AWS
  • Dans le AWS SAM CLI, utilisez la commande deploy CLI pour déployer toutes les ressources que vous avez définies dans le modèle.

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

    Dans la commande, le paramètre --capabilities permet à AWS CloudFormation de créer un rôle IAM.

    AWS CloudFormation crée les AWS ressources définies dans le modèle. Vous pouvez accéder aux noms de ces ressources dans la AWS CloudFormation console.

Pour tester l'application sans serveur dans le cloud AWS
  1. Ouvrez la console DynamoDB.

  2. Insérez un enregistrement dans la table que vous venez de créer.

  3. Accédez à l'onglet Mesures du tableau, puis choisissez Afficher toutes les CloudWatch mesures. Dans la CloudWatch console, choisissez Logs pour pouvoir afficher le résultat du journal.

Étapes suivantes

Le AWS SAM GitHub référentiel contient des exemples d'applications supplémentaires que vous pouvez télécharger et tester. Pour accéder à ce référentiel, consultez Exemples d'applications AWS SAM.

ConfidentialitéConditions d'utilisation du sitePréférences de cookies
© 2025, Amazon Web Services, Inc. ou ses affiliés. Tous droits réservés.