Cette page vous explique comment configurer et utiliser Cloud Logging et Cloud Monitoring avec des appels Service Extensions pour Cloud Load Balancing.
Journalisation
Cette section décrit la journalisation des appels de l'équilibreur de charge d'application.
Activer la journalisation sur un service de backend
Vous pouvez activer la journalisation des appels de l'équilibreur de charge d'application lors de la création du service en activant la journalisation sur le service de backend qui est la cible d'une requête (et non sur le service de backend associé à l'extension).
Pour activer la journalisation pour le service de backend cible, utilisez la commande gcloud compute backend-services update.
gcloud compute backend-services update BACKEND_SERVICE \
--enable-logging \
--logging-sample-rate=RATE \
--region=REGION \
--logging-optional=LOGGING_OPTIONAL_MODE \
--logging-optional-fields=OPTIONAL_FIELDS
Remplacez les éléments suivants :
BACKEND_SERVICE: nom du service de backendRATE: valeur comprise entre0.0et1.0, où0.0signifie qu'aucune requête n'est enregistrée et1.0signifie que 100% des requêtes sont enregistrées. La valeur par défaut est1.0. Ce paramètre n'est effectif que lorsqu'il est utilisé avec le paramètreenable-logging. Lorsque vous omettezenable-logging, la journalisation est désactivée.REGION: région du backendLOGGING_OPTIONAL_MODE: active la journalisation des champs facultatifs dans l'un des modes suivants :INCLUDE_ALL_OPTIONALinclut tous les champs facultatifs.EXCLUDE_ALL_OPTIONAL(par défaut) exclut tous les champs facultatifs.CUSTOMinclut une liste personnalisée de champs facultatifs.
OPTIONAL_FIELDS: liste de champs facultatifs séparés par une virgule lorsque vous sélectionnez le modeCUSTOM.
Une fois la journalisation activée sur le service de backend, les requêtes HTTP ou HTTPS sont consignées par Cloud Logging.
Pour afficher les journaux, accédez à la page Explorateur de journaux dans la console Google Cloud .
Pour en savoir plus, consultez les pages "Surveiller et résoudre les problèmes" de la documentation sur l'équilibreur de charge d'application, telles que Journalisation et surveillance de l'équilibreur de charge d'application interne.
Messages de journal pour un service de backend
En général, les entrées de journal de l'équilibreur de charge d'application contiennent des informations utiles pour surveiller et déboguer votre trafic HTTP ou HTTPS. Les entrées de journal contiennent les types d'informations suivants :
- Informations figurant dans la plupart des journaux Google Cloud , telles que la gravité, l'ID du projet, le numéro de projet et l'horodatage, comme décrit dans le journal LogEntry.
- HttpRequest.
Les journaux de requêtes des équilibreurs de charge HTTP et HTTPS contiennent un objet service_extension_info dans la charge utile JSON de l'entrée de journal de l'équilibreur de charge, avec les informations suivantes :
| Champ | Type | Description |
|---|---|---|
backend_target_name |
string | Nom de la cible de backend de l'extension. |
backend_target_type |
string | Type de la cible de backend. |
chain |
string | Nom de la chaîne d'extensions dans la ressource d'extension de service qui correspond à la requête. |
extension |
string | Nom de l'extension dans la chaîne d'extension. |
failed_open |
booléen | Lorsque la configuration de l'extension
est définie sur failOpentrue, la valeur true de cette métrique indique que
le traitement s'est poursuivi lorsque l'extension a expiré ou a échoué.
S'applique uniquement aux équilibreurs de charge d'application externes régionaux, aux équilibreurs de charge d'application internes régionaux et aux équilibreurs de charge d'application internes interrégionaux. |
grpc_status |
enum | État le plus récent du flux gRPC. Pour en savoir plus, consultez Codes d'état gRPC. |
per_processing_request_info |
tableau | Liste des statistiques ProcessingRequest pour les extensions ext_proc ou des statistiques CheckRequest pour les extensions ext_authz qui se produisent sur le flux gRPC.
|
per_processing_request_info[].event_type |
enum | Type d'événement de ProcessingRequest. Il peut s'agir de l'un des éléments suivants : REQUEST_HEADERS, REQUEST_BODY, RESPONSE_HEADERS ou RESPONSE_BODY.
|
per_processing_request_info[].latency |
duration | Durée entre l'envoi du premier octet du message ProcessingRequest à l'extension et la réception du dernier octet du message ProcessingResponse. |
per_processing_request_info[].processing_effect |
enum | Résultat du traitement de chaque événement dans une requête de traitement.
S'applique uniquement aux équilibreurs de charge d'application externes régionaux, aux équilibreurs de charge d'application internes régionaux et aux équilibreurs de charge d'application internes interrégionaux.
Les valeurs possibles sont les suivantes :
|
per_processing_request_info[].processing_effect_details |
string | Lorsque processing_effect est défini sur MUTATION_REJECTED, les détails expliquant pourquoi une mutation a été refusée.
S'applique uniquement aux équilibreurs de charge d'application externes régionaux, aux équilibreurs de charge d'application internes régionaux et aux équilibreurs de charge d'application internes interrégionaux. |
resource |
string | Nom de la ressource d'extension |
Surveillance
Cette section explique comment surveiller les appels configurés à l'aide des extensions de service pour Cloud Load Balancing.
Afficher un tableau de bord Monitoring
Les équilibreurs de charge d'application exportent les données de surveillance vers Cloud Monitoring.
Utilisez les métriques Monitoring aux fins suivantes :
- Évaluation de la configuration, de l'utilisation et des performances d'un équilibreur de charge
- Résolution des problèmes
- Amélioration de l'utilisation des ressources et de l'expérience utilisateur
Pour afficher un tableau de bord prédéfini, procédez comme suit :
- Dans la console Google Cloud , accédez à la page Présentation des tableaux de bord.
- Dans la section Catégories, cliquez sur GCP.
- Pour afficher la liste des tableaux de bord de tous vos équilibreurs de charge, dans la liste Tableaux de bord GCP, cliquez sur le tableau de bord nommé Équilibreurs de charge Google Cloud. Pour afficher le tableau de bord d'un équilibreur de charge spécifique, localisez celui-ci dans la liste, puis cliquez sur son nom.
- Pour n'afficher que les tableaux de bord prédéfinis de vos équilibreurs de charge, sélectionnez le tableau de bord approprié.
En plus des tableaux de bord prédéfinis proposés dans Monitoring, vous pouvez créer des tableaux de bord personnalisés, configurer des alertes et interroger les métriques via l'API Cloud Monitoring.
Pour en savoir plus, consultez les pages "Surveiller et résoudre les problèmes" de la documentation sur l'équilibreur de charge d'application, telles que Journalisation et surveillance de l'équilibreur de charge d'application interne.
Métriques de surveillance pour les accroches
Vous pouvez surveiller les métriques suivantes pour les services de backend de l'appel.
En version preview, vous pouvez surveiller les métriques suivantes pour les extensions sur tous les types d'équilibreurs de charge d'application. Ces métriques ont le préfixe networkservices.googleapis.com.
Le préfixe est omis dans les entrées du tableau suivant.
Le tableau suivant indique le type de métrique, le nom à afficher, le genre, le type, l'unité et la description de chaque métrique.
| Type de métrique | Nom à afficher
Genre, type, unité Description |
|---|---|
extension/invocation_count
|
Nombre d'appels d'extension
DELTA, INT64, 1
Nombre d'appels envoyés à l'extension. |
extension/invocation_latencies
|
Latences d'appel de l'extension
DELTA, DISTRIBUTION, ms
Distribution calculée à partir de la latence de chaque appel d'extension. S'applique uniquement aux extensions d'accroche. Non compatible avec les plug-ins. |
extension/sent_chunks_count
|
Nombre de fragments envoyés par l'extension
DELTA, INT64, 1
Applicable uniquement aux événements request_body et response_body.
Nombre de fragments de données envoyés à l'extension. |
extension/received_chunks_count
|
Nombre de fragments reçus par l'extension
DELTA, INT64, 1
Applicable uniquement aux événements request_body et response_body.
Nombre de fragments reçus de l'extension. |
extension/failed_open_count
|
Échecs d'appel de l'extension avec fail-open
DELTA, INT64, 1
Nombre d'échecs d'appel lorsque le système était configuré pour le fail-open et que la requête a été autorisée à continuer. |
extension/mutation_rejections_count
|
Nombre de rejets de mutation d'extension
DELTA, INT64, 1
Nombre d'appels ayant demandé des mutations d'en-tête de requête, de corps ou de trailer, mais qui ont été rejetés. Les rejets peuvent se produire pour diverses raisons, par exemple lorsque la mutation n'est pas valide ou dépasse les limites de taille. |
extension/sent_bytes_count
|
Nombre d'octets envoyés par l'extension
DELTA, INT64, By
Nombre d'octets envoyés à l'extension. |
extension/received_bytes_count
|
Nombre d'octets reçus par l'extension
DELTA, INT64, By
Nombre d'octets reçus par l'extension. |
Vous pouvez également surveiller les métriques suivantes. Ces métriques ont le préfixe loadbalancing.googleapis.com/. Le préfixe est omis dans les entrées du tableau.
| Type de métrique | Nom à afficher
Genre, type, unité Description |
|---|---|
https/backend_request_count,
https/external/regional/backend_request_count,
https/internal/backend_request_count
|
Nombre de requêtes des backends
DELTA, INT64, 1
Nombre de fois qu'un service de backend de légende est appelé depuis l'équilibreur de charge d'application. |
https/backend_request_bytes_count,
https/external/regional/backend_request_bytes_count,
https/internal/backend_request_bytes_count
|
Octets de requête de backend
DELTA, INT64, By
Nombre d'octets envoyés par l'équilibreur de charge au service de backend de l'appel. |
https/backend_response_bytes_count,
https/external/regional/backend_response_bytes_count,
https/internal/backend_response_bytes_count
|
Octets de réponse du backend
DELTA, INT64, By
Nombre d'octets reçus par l'équilibreur de charge à partir du backend de l'extension. |
https/backend_latencies,
https/external/regional/backend_latencies,
https/internal/backend_latencies
|
Latence du backend
DELTA, DISTRIBUTION, ms
Distribution calculée à partir de la somme des latences de chaque appel d'extension entre l'équilibreur de charge et le service de backend de l'appel. Échantillonné toutes les 60 secondes. |