

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.

# Tutoriel : Archiver et rejouer des événements sur Amazon EventBridge
<a name="eb-tutorial-archive-replay"></a>

Vous pouvez l'utiliser EventBridge pour acheminer [des événements](eb-events.md) vers des [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html)fonctions spécifiques à l'aide de [règles](eb-rules.md).

Dans ce didacticiel, vous allez créer une fonction à utiliser comme cible pour la EventBridge règle à l'aide de la console Lambda. Vous allez ensuite créer une [archive](eb-archive-event.md) et une règle qui archiveront les événements de test à l'aide de la EventBridge console. Dès qu’il y aura des événements dans cette archive, vous les [relirez](eb-replay-archived-event.md). 

**Topics**
+ [Étape 1 : créer une fonction Lambda](#eb-create-lambda-function)
+ [Étape 2 : Créer l’archive](#eb-ar-create-archive)
+ [Étape 3 : Créer une règle](#eb-ar-create-rule)
+ [Étape 4 : Envoyer des événements de test](#eb-ar-send-test-events)
+ [Étape 5 : Relire les événements](#eb-ar-replay-events)
+ [Étape 6 : Nettoyer vos ressources](#cleanup)

## Étape 1 : créer une fonction Lambda
<a name="eb-create-lambda-function"></a>

Pour commencer, créez une fonction Lambda afin de journaliser les événements.

**Pour créer une fonction Lambda :**

1. Ouvrez la AWS Lambda console à l'adresse [https://console.aws.amazon.com/lambda/](https://console.aws.amazon.com/lambda/).

1. Sélectionnez **Create function** (Créer une fonction).

1. Choisissez **Créer à partir de zéro**.

1. Saisissez un nom et une description pour la fonction Lambda. Par exemple, nommez la fonction `LogScheduledEvent`.

1. Gardez les autres options comme valeurs par défaut et choisissez **Créer une fonction**.

1. Dans l’onglet **Code** de la page de fonction, double-cliquez sur **index.js**.

1. Remplacez le JavaScript code existant par le code suivant :

   ```
   'use strict';
   
   exports.handler = (event, context, callback) => {
       console.log('LogScheduledEvent');
       console.log('Received event:', JSON.stringify(event, null, 2));
       callback(null, 'Finished');
   };
   ```

1. Choisissez **Déployer**.

## Étape 2 : Créer l’archive
<a name="eb-ar-create-archive"></a>

À présent, créez l’archive où seront conservés tous les événements de test.

**Pour créer une archive**

1. Ouvrez la EventBridge console Amazon à l'adresse [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/).

1. Dans le panneau de navigation, choisissez **Archives**.

1. Choisissez **Créer une archive**.

1. Entrez un nom et une description pour l’archive. Par exemple, nommez l’archive `ArchiveTest`.

1. Gardez les autres options comme valeurs par défaut et choisissez **Suivant**.

1. Choisissez **Créer une archive**.

## Étape 3 : Créer une règle
<a name="eb-ar-create-rule"></a>

Créez une règle pour archiver les événements qui sont envoyés au bus d’événements.

**Pour créer une règle**

1. Ouvrez la EventBridge console Amazon à l'adresse [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/).

1. Dans le volet de navigation, choisissez **Règles**.

1. Choisissez **Créer une règle**.

1. Saisissez un nom et une description pour la règle. Par exemple, nommez la règle `ARTestRule`.

   Une règle ne peut pas avoir le même nom qu'une autre règle de la même région et sur le même bus d'événement.

1. Pour **Event bus** (Bus d'événement), sélectionnez le bus d'événement que vous souhaitez associer à cette règle. Si vous souhaitez que cette règle mette en correspondance les événements en provenance de votre compte, sélectionnez **Par défaut**. Lorsqu'un service AWS de votre compte émet un événement, il accède toujours au bus d'événement par défaut de votre compte.

1. Pour **Type de règle**, choisissez **Règle avec un modèle d’événement**.

1. Choisissez **Suivant**.

1. Pour **Event source** (Source de l'événement), choisissez **Other** (Autres).

1. Pour **Modèle d’événement**, entrez ce qui suit :

   ```
   {
     "detail-type": [
       "customerCreated"
     ]
   }
   ```

1. Choisissez **Suivant**.

1. Pour **Types de cibles**, choisissez **service AWS **.

1. Pour **Sélectionner une cible**, choisissez **Fonction Lambda** dans la liste déroulante.

1. Pour **Fonction**, sélectionnez la fonction Lambda que vous avez créée dans la section **Étape 1 : Créer une fonction Lambda**. Dans cet exemple, sélectionnez `LogScheduledEvent`.

1. Choisissez **Suivant**.

1. Choisissez **Suivant**.

1. Consultez les détails de la règle et choisissez **Create rule** (Créer une règle).

## Étape 4 : Envoyer des événements de test
<a name="eb-ar-send-test-events"></a>

Maintenant que vous avez configuré l’archive et la règle, nous allons envoyer des événements de test pour vérifier que l’archive fonctionne correctement.

**Note**  
Les événements peuvent mettre un certain temps à parvenir à l’archive.

**Pour envoyer des événements de test (console)**

1. Ouvrez la EventBridge console Amazon à l'adresse [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/).

1. Dans le volet de navigation, sélectionnez **Event Buses (Bus d'événements)**.

1. Dans la vignette **Bus d’événements par défaut**, choisissez **Actions**, **Envoyer des événements**.

1. Entrez une source d’événements. Par exemple, `TestEvent`.

1. Pour **Type de détails**, entrez `customerCreated`.

1. Pour **Détails de l’événement**, entrez `{}`.

1. Sélectionnez **Send (Envoyer)**.

## Étape 5 : Relire les événements
<a name="eb-ar-replay-events"></a>

Dès lors que les événements de test se trouvent dans l’archive, vous pouvez les relire.

**Pour relire les événements archivés (console)**

1. Ouvrez la EventBridge console Amazon à l'adresse [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/).

1. Dans le panneau de navigation, choisissez ‎**Relectures**.

1. Choisissez **Démarrer une nouvelle lecture**.

1. Entrez un nom et une description pour le relecture. Par exemple, nommez la relecture `ReplayTest`.

1. Pour **Source**, sélectionnez l’archive que vous avez créée dans la section **Étape 2 : Créer l’archive**.

1. Pour **Période de relecture**, procédez comme suit.

   1.  Pour **Heure de début**, sélectionnez la date à laquelle vous avez envoyé les événements de test et l’heure à laquelle vous les avez envoyés. Par exemple : `2021/08/11` et `08:00:00`. 

   1.  Pour **Heure de fin**, sélectionnez la date et l’heure actuelles. Par exemple : `2021/08/11` et `09:15:00`. 

1. Choisissez **Démarrer la relecture**.

## Étape 6 : Nettoyer vos ressources
<a name="cleanup"></a>

Vous pouvez maintenant supprimer les ressources que vous avez créées pour ce didacticiel, sauf si vous souhaitez les conserver. En supprimant AWS les ressources que vous n'utilisez plus, vous évitez des frais inutiles sur votre AWS compte.

**Pour supprimer la ou les fonctions Lambda**

1. Ouvrez la [page Functions](https://console.aws.amazon.com/lambda/home#/functions) (Fonctions) de la console Lambda.

1. Sélectionnez la ou les fonctions que vous avez créées.

1. Sélectionnez **Actions**, **Supprimer**.

1. Sélectionnez **Delete (Supprimer)**.

**Pour supprimer les EventBridge archives**

1. Ouvrez la [page Archives](https://console.aws.amazon.com/events/home#/archives) de la EventBridge console.

1. Sélectionnez la ou les archives que vous avez créées.

1. Sélectionnez **Delete (Supprimer)**.

1. Entrez le nom de l’archive et choisissez **Supprimer**.

**Pour supprimer la ou les EventBridge règles**

1. Ouvrez la [page Règles](https://console.aws.amazon.com/events/home#/rules) de la EventBridge console.

1. Sélectionnez la ou les règles que vous avez créées.

1. Sélectionnez **Delete (Supprimer)**.

1. Sélectionnez **Supprimer**.