View a markdown version of this page

Journaux de bilan de santé - Elastic Load Balancing

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.

Journaux de bilan de santé

Elastic Load Balancing fournit des journaux de contrôle de santé qui capturent des informations détaillées sur l'état du contrôle de santé de vos cibles enregistrées, y compris les raisons de l'échec des contrôles de santé. Les journaux de vérification de l'état sont pris en charge pour les instances EC2, les adresses IP et les cibles de fonctions Lambda. Chaque entrée de journal contient des informations telles que le type de demande de vérification de santé ou de connexion, l'horodatage, l'adresse cible, l'identifiant du groupe cible, l'état de santé et le code de motif. Vous pouvez utiliser ces journaux de contrôle de santé pour analyser les modèles de santé cibles, surveiller les transitions de santé et résoudre les problèmes.

Les journaux de bilan de santé sont une fonctionnalité facultative qui est désactivée par défaut. Une fois que vous avez activé les journaux de contrôle de santé pour votre équilibreur de charge, Elastic Load Balancing capture les journaux et les stocke sous forme de fichiers compressés dans le compartiment Amazon S3 que vous spécifiez. Vous pouvez désactiver les journaux de bilan de santé à tout moment.

Les coûts de stockage pour Amazon S3 vous sont facturés, mais pas la bande passante utilisée par Elastic Load Balancing pour envoyer les fichiers journaux à Amazon S3. Pour plus d'informations sur les coûts de stockage, consultez Tarification Amazon S3.

Important

Alors que les journaux « existants » traditionnels (décrits dans cette section) restent disponibles, Application Load Balancer propose désormais des options de journalisation améliorées via CloudWatch Logs. CloudWatch Les journaux offrent des options de livraison plus flexibles, notamment vers Amazon CloudWatch Logs, Amazon Data Firehose et Amazon Simple Storage Service. Pour configurer ces options de journalisation améliorées, consultez l'onglet Intégrations de votre équilibreur de charge. Pour plus d'informations sur CloudWatch les journaux, consultezCloudWatch Journaux pour votre équilibreur de charge d'application.

Fichiers journaux de contrôle de santé

Elastic Load Balancing publie un fichier journal pour chaque nœud d'équilibreur de charge toutes les 5 minutes. L'équilibreur de charge peut fournir plusieurs journaux pour la même période lorsqu'un grand nombre de cibles sont attachées à l'équilibreur de charge ou qu'un petit intervalle de contrôle de santé est configuré (par exemple, toutes les 5 secondes).

Les noms de fichiers des journaux de contrôle de santé utilisent le format suivant :

bucket[/prefix]/AWSLogs/aws-account-id/elasticloadbalancing/region/yyyy/mm/dd/health_check_log_aws-account-id_elasticloadbalancing_region_app.load-balancer-id_end-time_ip-address_random-string.log.gz
bucket

Nom du compartiment S3.

prefix

(Facultatif) Préfixe (hiérarchie logique) pour le compartiment. Le préfixe que vous spécifiez ne doit pas inclure la chaîne AWSLogs. Pour plus d'informations, consultez Organisation des objets à l'aide de préfixes.

AWSLogs

Nous ajoutons la partie du nom de fichier commençant par AWSLogs après le nom du compartiment et le préfixe facultatif que vous avez spécifié.

aws-account-id

L'identifiant de AWS compte du propriétaire.

region

Région pour votre équilibreur de charge et le compartiment S3.

aaaa/mm/jj

Date à laquelle le journal a été fourni.

load-balancer-id

ID de ressource de l'équilibreur de charge. Si l'ID de ressource contient des barres obliques (/), elles sont remplacées par des points (.).

end-time

Date et heure auxquelles l'intervalle de journalisation a pris fin. Par exemple, une heure de fin de 20140215T2340Z contient des entrées pour les demandes effectuées entre 23 h 35 et 23 h 40 en heure UTC ou en heure zoulou.

ip-address

Adresse IP du nœud d'équilibreur de charge qui a traité la demande. Pour un équilibreur de charge, il s'agit d'une adresse IP privée.

random-string

Chaîne aléatoire générée par le système.

Voici un exemple de nom de fichier journal avec un préfixe :

s3://amzn-s3-demo-logging-bucket/logging-prefix/AWSLogs/123456789012/elasticloadbalancing/us-east-2/2022/05/01/health_check_log_123456789012_elasticloadbalancing_us-east-2_app.my-loadbalancer.1234567890abcdef_20220215T2340Z_172.160.001.192_20sg8hgm.log.gz

Voici un exemple de nom de fichier journal sans préfixe :

s3://amzn-s3-demo-logging-bucket/AWSLogs/123456789012/elasticloadbalancing/us-east-2/2022/05/01/health_check_log_123456789012_elasticloadbalancing_us-east-2_app.my-loadbalancer.1234567890abcdef_20220215T2340Z_172.160.001.192_20sg8hgm.log.gz

Vous pouvez stocker les fichiers journaux dans votre bucket indéfiniment. Vous pouvez également définir des règles de cycle de vie d'Amazon S3 pour archiver ou supprimer les fichiers journaux automatiquement. Pour plus d'informations, consultez la section Gestion du cycle de vie des objets dans le guide de l'utilisateur Amazon S3.

Entrées du journal de contrôle de santé

Elastic Load Balancing enregistre les résultats des contrôles de santé des cibles, y compris les raisons de défaillance de toutes les cibles enregistrées de cet équilibreur de charge. Chaque entrée de journal contient les détails d'un seul résultat de contrôle de santé effectué sur la cible enregistrée.

Syntaxe

Le tableau suivant décrit les champs d'une entrée du journal de contrôle de santé, dans l'ordre. Tous les champs sont délimités par des espaces. Lorsque nous ajoutons un nouveau champ, nous l'ajoutons à la fin de l'entrée du journal. Alors que nous nous préparons à publier un nouveau champ, il est possible que vous voyiez un « - » supplémentaire à la fin avant que le champ ne soit publié. Assurez-vous de configurer l'analyse des journaux pour qu'elle s'arrête après le dernier champ documenté, et de mettre à jour l'analyse des journaux après la publication d'un nouveau champ.

Champ (position) Description

type (1)

Type de demande de bilan de santé ou de connexion. Les valeurs possibles sont les suivantes (ignorer les autres valeurs) :

  • http-- HTTP

  • https-- HTTP sur TLS

  • h2-- HTTP/2 via TLS

  • grpc-- GrPC

  • lambda-- Fonction Lambda

heure (2)

Horodatage du lancement du bilan de santé sur une cible, au format ISO 8601.

latence (3)

Temps total écoulé (en secondes) pour terminer le bilan de santé en cours.

adresse_cible (4)

Adresse IP et port de la cible au format, IP:Port. L'ARN de Lambda si la cible est une fonction Lambda.

id_groupe_cible (5)

Nom du groupe cible auquel la cible est associée.

statut (6)

L'état du bilan de santé. Cette valeur correspond à PASS la réussite du bilan de santé. En cas d'échec du contrôle de santé, la valeur est FAIL

code_état (7)

Code de réponse reçu de la cible pour la demande de bilan de santé.

code_raison (8)

La raison de l'échec en cas d'échec du bilan de santé. Consultez Codes de motif d'erreur

Elbe (9)

ID de ressource de l'équilibreur de charge. Si vous analysez des entrées de journaux d'accès, notez que les ID de ressource peuvent contenir des barres obliques (/).

adresse_IP (10)

Adresse IP du nœud d'équilibreur de charge qui a traité la demande. Pour un équilibreur de charge, il s'agit d'une adresse IP privée.

Codes de motif d'erreur

Si le contrôle de santé de la cible échoue, l'équilibreur de charge enregistre l'un des codes de motif suivants dans le journal de contrôle de santé.

Code Description

TimedOut

Le contrôle de santé a échoué car la tentative de connexion à la cible a expiré ou la cible n'a pas répondu dans le délai d'expiration configuré pour le contrôle de santé. Cela peut se produire lorsque le groupe de sécurité de la cible bloque le trafic entrant sur le port de contrôle de santé, que la cible tarde à répondre ou que la prise de contact TLS n'a pas été terminée à temps

ConnectionReset

Le contrôle de santé a échoué car la cible s'est réinitialisée ou a fermé correctement la connexion avant qu'une réponse valide ne soit renvoyée

ResponseCodeMismatch

Le code d'état HTTP de la réponse de la cible à la demande de contrôle de santé ne correspondait pas au code d'état configuré

ResponseStringMismatch

Le corps de la réponse renvoyé par la cible ne contenait pas la chaîne configurée dans la configuration du contrôle de santé du groupe cible

InternalError

Erreur d'équilibrage de charge interne

TargetError

La cible renvoie un code d'erreur 5xx en réponse à la demande de bilan de santé

GRPCStatusHeaderEmpty

La réponse cible GRPC a un en-tête grpc-status sans valeur

GRPCUnexpectedStatus

La cible GRPC répond avec un statut GRPC inattendu

Note

Le nouveau code de motif TimedOut d'erreur remplace les codes de ConnectionTimedOut motif RequestTimedOut et.

Exemple d'entrées de journal

Voici des exemples d'entrées du journal de contrôle de santé. Notez que l'exemple de texte apparaît sur plusieurs lignes uniquement pour en faciliter la lecture.

Voici un exemple d'entrée de journal pour un bilan de santé réussi.

http 2025-10-31T12:44:59.875678Z 0.019584011 172.31.20.97:80 HCLogsTestIPs PASS 200 -

Voici un exemple d'entrée de journal pour un bilan de santé qui a échoué.

http 2025-10-31T12:44:58.901409Z 1.121980746 172.31.31.9:80 HCLogsTestIPs FAIL 502 TargetError

Configurer les notifications de remise des journaux

Pour recevoir des notifications lorsqu'Elastic Load Balancing transmet des journaux à votre compartiment S3, utilisez Amazon S3 Event Notifications. Elastic Load Balancing utilise PutObject CreateMultipartUpload, et POST Object pour transmettre les journaux à Amazon S3. Pour vous assurer de recevoir toutes les notifications de livraison de journaux, incluez tous ces événements de création d'objets dans votre configuration.

Pour plus d'informations, consultez la section Notifications d'événements Amazon S3 dans le guide de l'utilisateur d'Amazon Simple Storage Service.

Traitement des fichiers journaux de contrôle de santé

Les fichiers journaux du bilan de santé sont compressés. Si vous téléchargez les fichiers, vous devez les décompresser pour afficher les informations.

Si la demande est importante sur votre site web, votre équilibreur de charge peut générer des fichiers journaux avec des gigaoctets de données. Vous pouvez ne pas être en mesure de traiter une telle quantité de données à l'aide d'un traitement ligne par ligne. Vous devrez donc peut-être utiliser des outils d'analyse qui proposent des solutions de traitement en parallèle. Par exemple, vous pouvez utiliser les outils d'analyse suivants pour analyser et traiter les journaux de bilan de santé :

  • Amazon Athena est un service de requête interactif qui facilite l'analyse des données dans Amazon S3 à l'aide du langage SQL standard.

  • Loggly

  • Splunk

  • Sumo Logic