

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.

# Configuration des journaux pour les bus EventBridge d'événements Amazon
<a name="eb-event-bus-logs"></a>

Vous pouvez configurer EventBridge pour envoyer des journaux détaillant la manière dont un bus d'événements traite les événements, afin de faciliter le dépannage et le débogage.

Vous pouvez sélectionner les AWS services suivants comme *destinations de journal vers* lesquelles sont EventBridge envoyés les journaux pour le bus d'événements spécifié :
+ Amazon CloudWatch Logs

  EventBridge fournit des journaux au groupe de CloudWatch journaux de journaux spécifié. 

  Utilisez CloudWatch les journaux pour centraliser les journaux de tous les systèmes, applications et AWS services que vous utilisez, au sein d'un seul service hautement évolutif. Pour plus d'informations, consultez la section [Utilisation des groupes de journaux et des flux](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html) de * CloudWatch journaux dans le guide de l'utilisateur Amazon Logs*.
+ Amazon Data Firehose 

  EventBridge fournit des journaux à un flux de diffusion Firehose. 

  Amazon Data Firehose est un service entièrement géré qui fournit des données de streaming en temps réel à des destinations telles que certains AWS services, ainsi qu'à tout point de terminaison HTTP personnalisé ou à tout point de terminaison HTTP appartenant à des fournisseurs de services tiers pris en charge. Pour plus d'informations, consultez la section [Création d'un flux de diffusion Amazon Data Firehose](https://docs.aws.amazon.com/firehose/latest/dev/basic-create.html) dans le guide de l'utilisateur *d'Amazon Data Firehose*.
+ Amazon S3 

  EventBridge fournit les journaux sous forme d'objets Amazon S3 au compartiment spécifié.

  Amazon S3 est un service de stockage d'objets qui offre une évolutivité, une disponibilité des données, une sécurité et des performances de pointe. Pour plus d’informations, consultez [Chargement, téléchargement et utilisation des objets dans Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/uploading-downloading-objects.html) dans le *Guide de l’utilisateur Amazon Simple Storage Service*.

## Comment fonctionne la journalisation pour les bus dédiés aux événements
<a name="eb-event-logs-overview"></a>

EventBridge génère des journaux pour : 
+ Tout événement AWS de service correspondant à une règle du bus d'événements
+ Tout événement délivré par les méthodes suivantes, qu'il soit ingéré avec succès ou qu'il réponde à une règle quelconque :
  + Événements provenant de [sources d'événements partenaires](eb-saas.md)
  + Événements [rejoués à partir d'une archive](eb-archive.md)
  + Événements envoyés au bus via [`PutEvents`](eb-putevents.md)

EventBridge n'enregistre pas les événements qui correspondent uniquement [aux règles gérées](eb-rules.md#eb-rules-managed).

Les données de journal envoyées à chaque destination de journal sélectionnée sont les mêmes.

Vous pouvez personnaliser les journaux EventBridge envoyés aux destinations sélectionnées de la manière suivante :
+ Vous pouvez spécifier le *niveau de journalisation*, qui détermine les étapes d' EventBridgeenvoi des journaux vers les destinations sélectionnées. Pour de plus amples informations, veuillez consulter [Spécification du niveau de journalisation du bus d'événements](#eb-event-bus-logs-level).
+ Vous pouvez spécifier s'il EventBridge inclut des informations plus détaillées le cas échéant, notamment :
  + Détails de l’événement
  + Informations d'entrée cibles
  + Informations sur la demande cible

  Pour de plus amples informations, veuillez consulter [Intégration de données détaillées dans les journaux des bus d'événements](#eb-event-logs-data).

### Considérations relatives à la livraison du
<a name="eb-event-logs-delivery"></a>

Tenez compte des considérations suivantes lorsque vous configurez la journalisation pour les bus d'événements :
+ Les enregistrements du bus d'événements sont fournis dans la mesure du possible. La plupart des demandes concernant un bus d'événements correctement configuré pour la journalisation aboutissent à la livraison d'un enregistrement de journal. L'exhaustivité et l'actualité de l'enregistrement des événements par bus ne sont pas garanties. 
+ Dans certaines circonstances, la livraison des enregistrements du bus d'événements génère elle-même des événements qui sont ensuite envoyés à EventBridge, ce qui peut perturber la livraison des enregistrements du journal. Pour cette raison, EventBridge n'enregistre pas les événements suivants :
  + AWS KMS `[Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html)`et les `[GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)` événements générés lorsque des enregistrements de journal chiffrés à l'aide d'une clé gérée par le client sont livrés à une destination de journal.
  + `[PutRecordBatch](https://docs.aws.amazon.com/firehose/latest/APIReference/API_PutRecordBatch.html)`événements dans Firehose générés par la livraison de journaux de bus d'événements.
+ Pour les destinations des journaux S3, il n'est pas recommandé de spécifier un compartiment de destination dont la [notification d'événement](https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-event-notifications-eventbridge.html) est EventBridge activée, car cela peut perturber la livraison de vos journaux.

### Chiffrement des journaux
<a name="eb-event-logs-encryption"></a>

Lors de l'envoi de journaux, EventBridge chiffre les `error` sections `detail` et de chaque enregistrement de journal avec la clé KMS spécifiée pour le bus d'événements. Une fois livré, l'enregistrement est déchiffré puis rechiffré avec la clé KMS spécifiée pour la destination du journal.

Pour de plus amples informations, veuillez consulter [Chiffrement des journaux des bus d'événements](encryption-bus-logs.md).

### Spécification des autorisations de journalisation du bus d'événements
<a name="eb-event-logs-permission"></a>

Pour activer la journalisation à partir d'un bus d'événements, vous devez autoriser l'envoi de journaux EventBridge à partir de ce bus. Ajoutez une politique qui accorde des **AllowVendedLogDeliveryForResource**autorisations au bus d'événements.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ServiceLevelAccessForLogDelivery",
            "Effect": "Allow",
            "Action": [
                "events:AllowVendedLogDeliveryForResource"
            ],
            "Resource": "arn:aws:events:us-east-1:123456789012:event-bus/my-event-bus*"
        }
    ]
}
```

------

Pour plus d'informations, consultez la section [Autorisations spécifiques au service](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html#AWS-vended-logs-permissions) dans le Guide de l'*utilisateur CloudWatch des journaux*.

## Spécification du niveau de journalisation du bus d'événements
<a name="eb-event-bus-logs-level"></a>

Vous pouvez spécifier les types d'étapes de traitement des événements qui EventBridge se connectent aux destinations de journal sélectionnées. 

Choisissez parmi les niveaux de détail suivants à inclure dans les journaux. Le niveau de journalisation s'applique à toutes les destinations de journal spécifiées pour le bus d'événements. Chaque niveau de journalisation inclut les étapes des niveaux de journalisation précédents.
+ **OFF** — EventBridge n'envoie aucun journal. Il s’agit de l’option par défaut.
+ **ERREUR** : EventBridge envoie tous les journaux relatifs aux erreurs générées lors du traitement des événements et de la livraison cible.
+ **INFO** — EventBridge envoie tous les journaux relatifs aux erreurs, ainsi que les principales étapes effectuées lors du traitement des événements.
+ **TRACE** — EventBridge envoie tous les journaux générés au cours de toutes les étapes du traitement des événements.

Le tableau suivant répertorie les étapes de traitement des événements incluses dans chaque niveau de journalisation.


| Step (Étape) | TRACE | INFO | ERROR | OFF | 
| --- | --- | --- | --- | --- | 
|  Événement ingéré  | x | x |  |  | 
|  L'ingestion de l'événement a échoué  | x | h/24, j/7 | x |  | 
|  Événement reçu  | x |  |  |  | 
|  Tentative d'invocation lancée  | x |  |  |  | 
|  Echec permanent de la tentative d'invocation  | x | h/24, j/7 | x |  | 
|  Echec de la tentative d'invocation réessayable  | x | h/24, j/7 | x |  | 
|  Tentative d'invocation réussie  | x |  |  |  | 
|  Tentative d'invocation limitée  | x | h/24, j/7 | x |  | 
|  Invocation DLQ  | x | h/24, j/7 | x |  | 
|  Échec de l'invocation  | x | h/24, j/7 | x |  | 
|  Invocation commencée  | x | x |  |  | 
|  Invocation réussie  | x | x |  |  | 
|  L'accélérateur d'invocation a démarré  | x | h/24, j/7 | x |  | 
|  Aucune règle correspondante  | x | x |  |  | 
|  Règle correspondante   | x | x |  |  | 
|  Mise en correspondance des règles commencée   | x |  |  |  | 

## Intégration de données détaillées dans les journaux des bus d'événements
<a name="eb-event-logs-data"></a>

Vous pouvez spécifier EventBridge pour inclure des informations plus détaillées dans les journaux qu'il génère. Ces données peuvent être utiles pour le dépannage et le débogage. Si vous sélectionnez cette option, EventBridge inclut ces données dans les enregistrements pertinents pour toutes les destinations de journal spécifiées.

Les informations détaillées incluent les champs suivants : 
+ `event_detail`: Les détails de l'événement lui-même.
+ `target_input`: La demande EventBridge est envoyée à la cible.
+ `target_properties`: 

## Troncation des données dans les journaux des bus d'événements
<a name="eb-event-logs-data-truncation"></a>

En raison des contraintes liées à la destination EventBridge des journaux, limite les enregistrements à 1 Mo. Si un enregistrement de journal dépasse cette limite, EventBridge tronque l'enregistrement en supprimant les champs suivants dans l'ordre suivant :
+ `target_input`
+ `target_properties`
+ `target_response_body`

EventBridge supprime le `event_detail` champ des types d'enregistrement de journal suivants si nécessaire :
+ `EVENT_RECEIVED`
+ `EVENT_INGESTED`
+ `EVENT_INGESTED_FAILED`
+ `RULE_MATCH_STARTED`

Si la troncature est nécessaire, le EventBridge champ entier est supprimé.

Si EventBridge des champs sont tronqués dans l'événement, le `dropped_fields` champ inclut une liste des champs de données excisés.

## Signalement d'erreurs dans les journaux des bus d'événements
<a name="eb-event-logs-errors"></a>

EventBridge inclut également les données d'erreur, lorsqu'elles sont disponibles, dans les étapes représentant les états de défaillance. Les étapes sont les suivantes :
+ `EVENT_INGEST_FAILURE`
+ `INVOCATION_THROTTLE_START`
+ `INVOCATION_ATTEMPT_THROTTLE`
+ `INVOCATION_ATTEMPT_RETRYABLE_FAILURE`
+ `INVOCATION_ATTEMPT_PERMANENT_FAILURE`
+ `INVOCATION_FAILURE`
+ `INVOCATION_DLQ`

# Ce qu'Amazon EventBridge enregistre pour les bus événementiels
<a name="eb-event-logs-execution-steps"></a>

Comprendre comment EventBridge les événements liés aux processus peuvent vous aider à utiliser les journaux pour résoudre ou corriger les problèmes liés au bus d'événements.

Si la journalisation est activée, EventBridge génère plusieurs enregistrements de journal au fur et à mesure du traitement d'un événement. 

Voici les principales étapes à suivre EventBridge lors du traitement d'un événement :
+ Un événement est envoyé à un bus d'événements

  EventBridge génère des journaux pour les événements envoyés par des sources partenaires, rejoués à partir d'archives ou envoyés en utilisant`PutEvents`, qu'ils respectent ou non les règles.
+ EventBridge détermine si l'événement est conforme aux règles du bus.

  Si l'événement répond à une ou plusieurs règles, EventBridge passez à l'étape suivante.

  Si un AWS événement ne correspond à aucune règle EventBridge , il est supprimé et ne génère aucun journal.
+ EventBridge invoque la cible.

  EventBridge essaie à nouveau d'invoquer la cible si nécessaire jusqu'à ce que :
  + L'événement a été organisé avec succès.
  + La livraison de l'événement échoue, par exemple en cas d'expiration de la politique de nouvelle tentative ou en cas d'échec permanent.

    Si la livraison échoue, EventBridge envoie l'événement vers une file d'attente de lettres mortes (DLQ) si une telle file est spécifiée, ou supprime l'événement si aucune DLQ n'est spécifiée.

Le schéma ci-dessous présente une vue détaillée du flux de traitement des événements, avec toutes les étapes possibles représentées, ainsi que le niveau de journalisation de chaque étape.

Pour une liste complète des étapes, voir[Spécification du niveau de journalisation](eb-event-bus-logs.md#eb-event-bus-logs-level).

![\[EventBridge procède par étapes pour traiter chaque événement envoyé au bus.\]](http://docs.aws.amazon.com/fr_fr/eventbridge/latest/userguide/images/bus_logging_eventbridge_conceptual.svg)


# Schéma du journal du bus d' EventBridge événements Amazon
<a name="eb-event-logs-schema"></a>

La référence suivante détaille le schéma des enregistrements du journal des bus d' EventBridge événements. Chaque enregistrement représente une étape du EventBridge traitement d'un événement spécifique.

Pour de plus amples informations, veuillez consulter [Enregistrement des bus d'événements ](eb-event-bus-logs.md).

```
{    
    "resource\$1arn": "arn:aws:events:region:account:event-bus/bus-name",
    "request\$1id": "guid", 
    "event\$1id": "guid", 
    "invocation\$1id": "guid",
    "message\$1timestamp\$1ms": "date_time",    
    "message\$1type": "step",  
    "log\$1level": "TRACE | INFO | ERROR",
    "details": {
      },
    "error": {  
        "http\$1status\$1code": code,  
        "error\$1message": "error_message",  
        "aws\$1service": "service_name",  
        "request\$1id": "service_request_id"  
    }  
}
```

**resource\$1arn**  <a name="event-log-schema-resource-arn"></a>
Le nom de ressource Amazon (ARN) du bus d'événements.

**request\$1id**  <a name="event-log-schema-request-id"></a>
ID de la demande.

**event\$1id**  <a name="event-log-schema-event-id"></a>
ID de l'événement en cours de traitement.

**identifiant\$1d'invocation**  <a name="event-log-schema-invocation-id"></a>
ID de l'invocation pour l'événement.

**message\$1timestamp\$1ms**  <a name="event-log-schema-timestamp"></a>
Date et heure auxquelles l’événement de journal a été émis.  
Unité : milliseconde

**message\$1type**  <a name="event-log-schema-message-type"></a>
Étape de traitement des événements pour laquelle l'enregistrement du journal a été généré.  
Pour plus d'informations sur les étapes à EventBridge suivre lors du traitement d'un événement, consultez[Ce qu'Amazon EventBridge enregistre pour les bus événementiels](eb-event-logs-execution-steps.md).  
*Valeurs valides*:  
+ `EVENT_INGEST_FAILURE`
+ `EVENT_INGEST_SUCCESS`
+ `EVENT_RECEIPT`
+ `INVOCATION_ATTEMPT_PERMANENT_FAILURE`
+ `INVOCATION_ATTEMPT_RETRYABLE_FAILURE`
+ `INVOCATION_ATTEMPT_START`
+ `INVOCATION_ATTEMPT_SUCCESS`
+ `INVOCATION_ATTEMPT_THROTTLE`
+ `INVOCATION_DLQ`
+ `INVOCATION_FAILURE`
+ `INVOCATION_START`
+ `INVOCATION_SUCCESS`
+ `INVOCATION_THROTTLE_START`
+ `NO_STANDARD_RULES_MATCHED`
+ `RULE_MATCH`
+ `RULE_MATCH_START`

**log\$1level**  <a name="event-log-schema-loglevel"></a>
Niveau de détail spécifié pour le journal du bus d'événements.  
*Valeurs valides* : `ERROR` \$1 `INFO` \$1 `TRACE`  
Pour de plus amples informations, veuillez consulter [Spécification du niveau de journalisation du bus d'événements](eb-event-bus-logs.md#eb-event-bus-logs-level).

**détails**  <a name="event-log-schema-details"></a>
Contient les détails de l'étape, en fonction du type de détail de l'étape.  
Les champs répertoriés ci-dessous sont renvoyés pour les types de messages suivants :  
+ `EVENT_INGEST_SUCCESS`
+ `EVENT_INGEST_FAILURE`
+ `EVENT_RECEIPT`
+ `RULE_MATCH_START`

```
{
  "caller_account_id": "account_id",
  "source_time_ms": date_time,
  "source": "source",
  "detail_type": " type",
  "resources": [],
  "event_detail": "{}"
}
```
Les champs répertoriés ci-dessous sont renvoyés pour le type de message suivant :  
+ `RULE_MATCH`

```
{
  "rule_arn": "ARN",
  "target_arns": [
    "ARN"
  ],
  "invocation_ids": [
    "guid"
  ]
}
```
Les champs répertoriés ci-dessous sont renvoyés pour les types de messages suivants :  
+ `INVOCATION_ATTEMPT_START`
+ `INVOCATION_START`
+ `INVOCATION_THROTTLE_START`

```
{
  "rule_arn": "ARN",
  "role_arn": "ARN",
  "target_arn": "ARN",
  "attempt_count": Integer,
  "target_input": "string",
  "target_properties": "string"
}
```
Les champs répertoriés ci-dessous sont renvoyés pour les types de messages suivants :  
+ `INVOCATION_DLQ`
+ `INVOCATION_FAILURE`
+ `INVOCATION_SUCCESS`

```
{
  "rule_arn": "ARN",
  "role_arn": "ARN",
  "target_arn": "ARN",
  "target_input": "string",
  "target_properties": "string",
  "total_attempts": Integer,
  "final_invocation_status": "status",
  "ingestion_to_start_latency_ms": Integer,
  "ingestion_to_complete_latency_ms": Integer,
  "ingestion_to_success_latency_ms": Integer,
  "target_duration_ms": Integer,
  "target_response_body": "string"
}
```
Les `ingestion_to_start_latency_ms` et ne `ingestion_to_complete_latency_ms` sont inclus que lors de la première tentative d'invocation. Le `ingestion_to_success_latency_ms` champ n'est inclus que pour les appels réussis.  
Les champs répertoriés ci-dessous sont renvoyés pour les types de messages suivants :  
+ `INVOCATION_ATTEMPT_PERMANENT_FAILURE`
+ `INVOCATION_ATTEMPT_RETRYABLE_FAILURE`
+ `INVOCATION_ATTEMPT_SUCCESS`
+ `INVOCATION_ATTEMPT_THROTTLE`

```
{
  "rule_arn": "ARN",
  "role_arn": "ARN",
  "target_arn": "ARN",
  "attempt_type": "FIRST | THROTTLE | RETRY",
  "attempt_count": Integer,
  "invocation_status": "status",
  "target_duration_ms": Integer,
  "target_response_body": "string"
}
```

**champ\$1déposés**  <a name="event-log-schema-dropped_fields"></a>
La liste de tous les champs de données EventBridge a été tronquée pour maintenir l'enregistrement en dessous de la limite de taille de 1 Mo.  
EventBridge n'inclut pas ce champ s'il contient des champs de détail tronqués.  
Pour de plus amples informations, veuillez consulter [Troncation des données dans les journaux des bus d'événements](eb-event-bus-logs.md#eb-event-logs-data-truncation).

**error**  <a name="event-log-schema-error"></a>
Contient les informations relatives à toute erreur générée au cours de cette étape. En cas d'erreur, EV inclut toujours les champs suivants :  
+ `error_message`
+ `aws_service`
Et les champs suivants, s'ils sont disponibles :  
+ `request_id`
+ `http_status_code`
Si aucune erreur n'a été générée lors de cette étape, EventBridge n'inclut pas ce champ dans l'enregistrement du journal.    
**http\$1status\$1code**  <a name="event-log-schema-http-status-code"></a>
Code de statut HTTP renvoyé par le service appelé.  
**message\$1erreur**  <a name="event-log-schema-message"></a>
Message d’erreur renvoyé par le service appelé.  
**aws\$1service**  <a name="event-log-schema-aws-service"></a>
Nom du service appelé.  
**ID de demande**  <a name="event-log-schema-error-request-id"></a>
ID de cette demande provenant du service appelé.