

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.

# Traçage des demandes pour votre Application Load Balancer
<a name="load-balancer-request-tracing"></a>

Lorsque l'équilibreur de charge reçoit une demande d'un client, il ajoute ou met à jour l'en-tête **X-Amzn-Trace-Id** avant d'envoyer la demande à la cible. Les services ou les applications entre l'équilibreur de charge et la cible peuvent également ajouter ou mettre à jour cet en-tête.

Vous pouvez utiliser le suivi des demandes pour suivre des demandes HTTP de clients à des cibles ou d'autres services. Si vous activez les journaux d'accès, le contenu de l'en-tête **X-Amzn-Trace-Id** est consigné. Pour de plus amples informations, veuillez consulter [Journaux d'accès pour votre Application Load Balancer](load-balancer-access-logs.md).

## Syntaxe
<a name="request-tracing-syntax"></a>

L'en-tête **X-Amzn-Trace-Id** contient des champs avec le format suivant :

```
Field=version-time-id
```

*Champ*  
Nom du champ. Les valeurs prises en charge sont `Root` et `Self`.  
Une application peut ajouter des champs arbitraires pour ses propres fins. L'équilibreur de charge conserve ces champs mais ne les utilise pas.

*version*  
Numéro de version. Cette valeur est 1.

*time*  
Heure Posix en secondes. Cette valeur est composée de 8 chiffres hexadécimaux.

*id*  
Identificateur de suivi. Cette valeur est de 24 chiffres hexadécimaux.

**Exemples**  
Si l'en-tête **X-Amzn-Trace-Id** n'est pas présent sur une demande entrante, l'équilibreur de charge génère un en-tête avec un champ `Root` et transmet la demande. Par exemple :

```
X-Amzn-Trace-Id: Root=1-67891233-abcdef012345678912345678
```

Si l'en-tête **X-Amzn-Trace-Id** est présent et comporte un champ `Root`, l'équilibreur de charge insère un champ `Self` et transmet la demande. Par exemple :

```
X-Amzn-Trace-Id: Self=1-67891233-12456789abcdef012345678;Root=1-67891233-abcdef012345678912345678
```

Si une application ajoute un en-tête avec un champ `Root` et un champ personnalisé, l'équilibreur de charge conserve les deux champs, insère un champ `Self`, puis transmet la demande :

```
X-Amzn-Trace-Id: Self=1-67891233-12456789abcdef012345678;Root=1-67891233-abcdef012345678912345678;CalledFrom=app
```

Si l'en-tête **X-Amzn-Trace-Id** est présent et comporte un champ `Self`, l'équilibreur de charge met à jour la valeur du champ `Self`.

## Limitations
<a name="request-tracing-limits"></a>
+ L'équilibreur de charge met à jour l'en-tête lorsqu'il reçoit une demande entrante, pas lorsqu'il reçoit une réponse.
+ Si la taille des en-têtes HTTP dépasse 7 Ko, l'équilibreur de charge réécrit l'en-tête **X-Amzn-Trace-Id** avec un champ `Root`.
+ Avec WebSockets, vous pouvez effectuer le suivi uniquement jusqu'à ce que la demande de mise à niveau soit réussie.