Ce document décrit les types d'événements pouvant être affichés sous forme d'annotations. sur les graphiques. Un événement est une activité, comme un redémarrage ou un plantage, qui affecte le fonctionnement d'un système. Afficher des événements peut vous aider à établir une corrélation entre les données de différentes sources lorsque vous essayez de résoudre un problème.
Pour chaque événement, des liens vers des références ou des documents de dépannage sont fournis, ainsi que des informations sur la façon de le rechercher. Par exemple, lorsque des événements sont identifiés par l’analyse de vos journaux, une requête pouvant être utilisée avec l'explorateur de journaux est fournie.
Pour ajouter des annotations à vos graphiques, vous devez configurer le tableau de bord ou l'onglet qui affiche le graphique. Par exemple, vous pouvez configurer la plupart des tableaux de bord listés sur la page Tableaux de bord de la console Google Cloud pour afficher des événements. De même, vous pouvez configurer certains onglets Observabilité spécifiques au service, tels que ceux de Compute Engine et Google Kubernetes Engine, pour afficher des événements. Pour en savoir plus sur la configuration, consultez la section Afficher des événements dans un tableau de bord.
La capture d'écran suivante illustre un graphique qui présente plusieurs événements identifiés en analysant les entrées de journal, et un Événement Service Health:
Chaque annotation peut lister plusieurs événements. Dans la capture d'écran précédente, un événement pour un déploiement GKE est répertorié.
Types d'événements d'alerte
Cette section décrit les types d'événements d'alerte pouvant s'afficher dans un tableau de bord.
Alerte ouverte
Les événements d'alerte ouverte vous permettent de corréler vos données représentées graphiquement incidents ouverts. Un événement d'ouverture d'alerte s'affiche lorsque les conditions suivantes sont remplies:
- L'incident correspondant a été ouvert pendant la période spécifiée par le tableau de bord.
- L'incident correspondant n'est pas fermé.
Aucune annotation n'est créée pour les incidents ouverts en dehors la période spécifiée par le tableau de bord ne sont pas affichées. De même, un événement d'ouverture d'alerte n'est pas affiché lorsque l'incident correspondant a été ouvert, puis fermé au cours de la période spécifiée par le tableau de bord.
L'info-bulle d'un événement d'ouverture d'alerte inclut les éléments suivants :
- Nom de la règle d'alerte.
- Informations récapitulatives, le cas échéant Par exemple, ces informations peuvent inclure le seuil et la valeur mesurée.
- Durée de l'incident, ainsi que date et heure de son ouverture.
- Libellés de métriques et de ressources. Il est possible que l'info-bulle n'affiche pas tous les libellés.
- Un bouton Afficher qui ouvre la page Détails de l'incident
Types d'événements Google Kubernetes Engine
Cette section décrit les types d'événements Google Kubernetes Engine pouvant être affichés dans un tableau de bord.
Charge de travail GKE corrigée ou mise à jour
Ce type d'événement vous aide à résoudre les problèmes de déploiement de la charge de travail GKE ou de modification de statefulset, car ces événements peuvent être corrélés avec des régressions de performances ou d'autres problèmes de performances. Ce type d'événement est affiché Lorsqu'une charge de travail est créée, mise à jour ou supprimée.
Si vous souhaitez créez une règle d'alerte basée sur les journaux pour cette type d'événement, utilisez la requête suivante:
resource.type=k8s_cluster protoPayload.methodName=( io.k8s.apps.v1.deployments.create OR io.k8s.apps.v1.deployments.patch OR io.k8s.apps.v1.deployments.update OR io.k8s.apps.v1.deployments.delete OR io.k8s.apps.v1.deployments.deletecollection OR io.k8s.apps.v1.statefulsets.create OR io.k8s.apps.v1.statefulsets.patch OR io.k8s.apps.v1.statefulsets.update OR io.k8s.apps.v1.statefulsets.delete OR io.k8s.apps.v1.statefulsets.deletecollection OR io.k8s.apps.v1.daemonsets.create OR io.k8s.apps.v1.daemonsets.patch OR io.k8s.apps.v1.daemonsets.update OR io.k8s.apps.v1.daemonsets.delete OR io.k8s.apps.v1.daemonsets.deletecollection ) -protoPayload.authenticationInfo.principalEmail="system:addon-manager" -protoPayload.request.metadata.namespace=(kube-system OR gmp-system OR gmp-public OR gke-gmp-system)
Pour en savoir plus, consultez les pages Présentation du déploiement des charges de travail et Afficher les métriques d'observabilité.
Plantage d'un pod GKE
Ce type d'événement vous aide à identifier et à résoudre les plantages des pods GKE. Les plantages de pod peuvent être causés par l'épuisement de la mémoire ou une erreur d'application. Ce type d'événement s'affiche dans les cas suivants:
- L'état du pod est
CrashLoopBackoff
- Le pod se termine par un code de sortie différent de zéro.
- Le pod se termine par une condition de mémoire insuffisante.
- Le pod est évincé.
- Échec de la vérification d'aptitude/d'activité.
Si vous souhaitez créer une règle d'alerte basée sur les journaux pour ce type d'événement, utilisez la requête suivante :
( log_id(events) ( (resource.type=k8s_pod jsonPayload.reason=(BackOff OR Unhealthy OR Killing OR Evicted)) OR (resource.type=k8s_node jsonPayload.reason=OOMKilling) ) severity=WARNING ) OR ( log_id(cloudaudit.googleapis.com%2Factivity) resource.type=k8s_cluster (protoPayload.methodName=io.k8s.core.v1.pods.eviction.create OR (protoPayload.methodName=io.k8s.core.v1.pods.delete protoPayload.response.status.containerStatuses.state.terminated.exitCode:* -protoPayload.response.status.containerStatuses.state.terminated.exitCode=0 ) ) )
Pour en savoir plus, consultez la section Dépannage : CrashLoopBackOff.
Échec de la programmation d'un pod GKE
Ce type d'événement vous aide à identifier les pods qui ne peuvent pas sur un nœud. Ce type d'événement s'affiche en cas d'échec de la planification des pods pour l'une des raisons suivantes:
- Processeur de nœud insuffisant.
- Mémoire de nœud insuffisante.
- Aucun nœud pour les rejets ou les tolérances.
- Nœuds ayant atteint la limite maximale de pods.
- Pool de nœuds à la taille maximale.
Si vous souhaitez créez une règle d'alerte basée sur les journaux pour cette type d'événement, utilisez la requête suivante:
( log_id(events) resource.type=k8s_pod jsonPayload.reason=(NotTriggerScaleUp OR FailedScheduling) ) OR ( log_id(container.googleapis.com/cluster-autoscaler-visibility) resource.type=k8s_cluster jsonPayload.noDecisionStatus.noScaleUp:* )
Pour obtenir des informations de dépannage, consultez Résoudre le problème: pod non programmable.
Échec de la création d'un conteneur GKE
Ce type d'événement vous aide à identifier et à résoudre les échecs de création d'un conteneur GKE. La création du conteneur peut échouer pour la raison suivante : comme l'échec de l'installation de volumes ou de l'extraction d'images.
Si vous souhaitez créez une règle d'alerte basée sur les journaux pour cette type d'événement, utilisez la requête suivante:
log_id(events) resource.type=k8s_pod jsonPayload.reason=(Failed OR FailedMount) severity=WARNING
Pour en savoir plus, consultez la section Dépannage : ImagePullBackOff et ErrImagePull.
Scaling de l'autoscaler de pods à la hausse ou à la baisse
Cet événement vous offre une visibilité sur les redimensionnements de l'Autoscaler horizontal de pods, d'augmenter ou de diminuer le nombre de pods en cours d'exécution pour une charge de travail. Pour en savoir plus, consultez la section Autoscaling horizontal des pods.
Si vous souhaitez créer une règle d'alerte basée sur les journaux pour ce type d'événement, utilisez la requête suivante :
resource.type=k8s_cluster log_id(events) jsonPayload.involvedObject.kind=HorizontalPodAutoscaler jsonPayload.reason=SuccessfulRescale
Scaling à la hausse et à la baisse de l'autoscaler de cluster
Cet événement vous permet de savoir quand l'autoscaler de cluster augmente ou diminue le nombre de nœuds dans un pool de nœuds de votre cluster. Pour en savoir plus, consultez les pages À propos de l'autoscaling de cluster et Afficher les événements de l'autoscaler de cluster.
Si vous souhaitez créer une règle d'alerte basée sur les journaux pour ce type d'événement, utilisez la requête suivante :
(resource.type=k8s_cluster log_id(container.googleapis.com%2Fcluster-autoscaler-visibility) jsonPayload.decision:*)
Création et suppression d'un cluster
Cet événement suit les actions de création et de suppression de clusters GKE. Pour en savoir plus, consultez les pages Créer un cluster Autopilot, Créer un cluster zonal et Supprimer un cluster.
Si vous souhaitez créez une règle d'alerte basée sur les journaux pour cette type d'événement, utilisez la requête suivante:
resource.type=gke_cluster log_id(cloudaudit.googleapis.com%2Factivity) protoPayload.methodName=( google.container.v1alpha1.ClusterManager.CreateCluster OR google.container.v1beta1.ClusterManager.CreateCluster OR google.container.v1.ClusterManager.CreateCluster OR google.container.v1alpha1.ClusterManager.DeleteCluster OR google.container.v1beta1.ClusterManager.DeleteCluster OR google.container.v1.ClusterManager.DeleteCluster ) operation.first=true
Mise à jour du cluster
Cet événement permet de suivre les mises à jour de clusters GKE. Les mises à jour incluent les mises à niveau automatiques de la version du plan de contrôle, ainsi que les mises à niveau et les modifications de configuration du cluster. Pour en savoir plus, consultez les pages Mettre à jour manuellement un cluster ou un pool de nœuds et Mettre à niveau un cluster standard.
Si vous souhaitez créer une règle d'alerte basée sur les journaux pour ce type d'événement, utilisez la requête suivante :
resource.type=gke_cluster log_id(cloudaudit.googleapis.com%2Factivity) ( protoPayload.methodName=( google.container.internal.ClusterManagerInternal.PatchCluster OR google.container.internal.ClusterManagerInternal.UpdateClusterInternal OR google.container.internal.ClusterManagerInternal.UpdateCluster ) ) OR ( protoPayload.methodName=( google.container.v1beta1.ClusterManager.UpdateCluster OR google.container.v1.ClusterManager.UpdateCluster ) operation.first=true ) protoPayload.metadata.operationType=(UPGRADE_MASTER OR REPAIR_CLUSTER OR UPDATE_CLUSTER)
Mise à jour du pool de nœuds
Cet événement permet de suivre les mises à jour de pools de nœuds GKE. Les mises à jour incluent le pool de nœuds automatique mises à niveau, mises à niveau manuelles, modifications de configuration et redimensionnements. Pour en savoir plus, consultez les pages Mettre à jour manuellement un cluster ou un pool de nœuds et Mettre à niveau un cluster standard.
Si vous souhaitez créer une règle d'alerte basée sur les journaux pour ce type d'événement, utilisez la requête suivante :
resource.type=gke_nodepool log_id(cloudaudit.googleapis.com%2Factivity) ( protoPayload.methodName=( google.container.internal.ClusterManagerInternal.UpdateClusterInternal OR google.container.internal.ClusterManagerInternal.RepairNodePool ) ) OR ( protoPayload.methodName=( google.container.v1beta1.ClusterManager.UpdateNodePool OR google.container.v1.ClusterManager.UpdateNodePool OR google.container.v1beta1.ClusterManager.SetNodePoolSize OR google.container.v1.ClusterManager.SetNodePoolSize OR google.container.v1beta1.ClusterManager.SetNodePoolManagement OR google.container.v1.ClusterManager.SetNodePoolManagement OR google.container.v1beta1.ClusterManager.SetNodePoolAutoscaling OR google.container.v1.ClusterManager.SetNodePoolAutoscaling ) operation.first=true )
Types d'événements Cloud Run
Cette section décrit les types d'événements Cloud Run pouvant être affichés dans un tableau de bord.
Déploiement Cloud Run
Ce type d'événement vous aide à identifier Échecs de déploiement Cloud Run. Le déploiement peut échouer pour différentes raisons, telles que la suppression d'un compte de service, des autorisations incorrectes, l'échec de l'importation d'un conteneur ou l'échec du démarrage d'un conteneur.
Si vous souhaitez créez une règle d'alerte basée sur les journaux pour cette type d'événement, utilisez la requête suivante:
log_id(cloudaudit.googleapis.com%2Factivity) resource.type=cloud_run_revision protoPayload.methodName=google.cloud.run.v1.Services.ReplaceService
Pour obtenir des informations de dépannage, consultez Résoudre les problèmes liés à Cloud Run
Types d'événements Cloud SQL
Cette section décrit les types d'événements Cloud SQL pouvant être affichés dans un tableau de bord.
Basculement Cloud SQL
Ce type d'événement vous aide à identifier les basculements manuels ou automatiques. Un basculement se produit en cas de défaillance d'une instance ou d'une zone, et l'instance de secours devient la nouvelle instance principale. Lors d'un basculement, Cloud SQL passe automatiquement à l'instance de secours pour diffuser les données.
Si vous souhaitez créez une règle d'alerte basée sur les journaux pour cette type d'événement, utilisez la requête suivante:
resource.type=cloudsql_database ( ( log_id(cloudaudit.googleapis.com%2Factivity) protoPayload.methodName=cloudsql.instances.failover operation.last=true ) OR ( log_id(cloudaudit.googleapis.com%2Fsystem_event) protoPayload.methodName=cloudsql.instances.autoFailover ) )
Pour en savoir plus, consultez la section À propos de la haute disponibilité.
Démarrage ou arrêt de Cloud SQL
Ce type d'événement vous aide à identifier si une instance Cloud SQL a été démarrée, arrêtée ou redémarrée manuellement. Lorsqu'une instance est arrêtée, toutes les connexions, les fichiers ouverts et les opérations en cours d'exécution sont aussi arrêtés.
Si vous souhaitez créer une règle d'alerte basée sur les journaux pour ce type d'événement, utilisez la requête suivante :
log_id(cloudaudit.googleapis.com%2Factivity) resource.type=cloudsql_database protoPayload.methodName=cloudsql.instances.update operation.last=true protoPayload.metadata.intents.intent=(START_INSTANCE OR STOP_INSTANCE)
Pour en savoir plus, consultez les pages À propos de la haute disponibilité et Démarrer, arrêter et redémarrer des instances.
Stockage Cloud SQL
Ce type d'événement vous aide à identifier les événements liés au stockage Cloud SQL, y compris lorsque l'espace de stockage de la base de données est saturé, et lorsqu'une base de données est arrêtée en raison jusqu'à atteindre la capacité de stockage. Bases de données ayant atteint leur capacité de stockage le stockage automatique activé peut être arrêté pour éviter toute corruption des données.
Si vous souhaitez créer une règle d'alerte basée sur les journaux pour ce type d'événement, utilisez la requête suivante :
resource.type=cloudsql_database ( ( (log_id(cloudsql.googleapis.com%2Fpostgres.log) OR log_id(cloudsql.googleapis.com%2Fmysql.err)) textPayload=~"No space left on device" severity=(ERROR OR EMERGENCY) ) OR ( log_id(cloudaudit.googleapis.com%2Fsystem_event) protoPayload.methodName=cloudsql.instances.databaseShutdownOutOfStorage ) )
Types d'événements Compute Engine
Cette section décrit les types d'événements Compute Engine pouvant être affichés dans un tableau de bord.
Arrêts de machines virtuelles
Ce type d'événement vous aide à identifier les arrêts de machines virtuelles (VM), y compris les réinitialisations et arrêts déclenchés manuellement, les arrêts de l'OS invité, les interruptions de maintenance et les erreurs d'hôte.
Si vous souhaitez créez une règle d'alerte basée sur les journaux pour cette type d'événement, utilisez la requête suivante:
resource.type=gce_instance ( ( log_id(cloudaudit.googleapis.com%2Factivity) protoPayload.methodName=( beta.compute.instances.reset OR v1.compute.instances.reset OR beta.compute.instances.stop OR v1.compute.instances.stop ) operation.first=true ) OR ( log_id(cloudaudit.googleapis.com%2Fsystem_event) protoPayload.methodName=( compute.instances.hostError OR compute.instances.guestTerminate OR compute.instances.terminateOnHostMaintenance ) ) )
Pour en savoir plus, consultez Arrêter et démarrer une VM, Résoudre les problèmes d'arrêt et de redémarrage de VM
Échec du démarrage de l'instance de VM
Cet événement permet de suivre les échecs de démarrage des instances de VM Compute Engine. L'événement affiche les échecs de démarrage dus à des ruptures de stock, à l'épuisement de l'espace d'adresses IP, au quota dépassé, ou les erreurs d'intégrité de la VM protégée.
Si vous souhaitez créez une règle d'alerte basée sur les journaux pour cette type d'événement, utilisez la requête suivante:
resource.type=gce_instance ( ( log_id(cloudaudit.googleapis.com%2Factivity) protoPayload.methodName=(beta.compute.instances.insert OR v1.compute.instances.insert) protoPayload.status.message=(ZONE_RESOURCE_POOL_EXHAUSTED OR IP_SPACE_EXHAUSTED OR QUOTA_EXCEEDED) ) OR ( log_id(compute.googleapis.com%2Fshielded_vm_integrity) severity="ERROR" ) )
Erreur de l'OS invité de l'instance de VM
Cet événement permet de suivre les erreurs spécifiques du système d'exploitation invité des instances de VM Compute Engine en tant que enregistrées par les journaux de la console série. Les erreurs suivies concernent les disques saturés, les échecs d'installation du système de fichiers et les échecs de démarrage qui activent le mode d'urgence Linux.
Pour que ces événements soient visibles, vous devez activer la journalisation des données en sortie du port série
Cloud Logging en définissant serial-port-logging-enable=true
dans la VM ou dans
les métadonnées du projet. Pour en savoir plus, consultez la section Activer et désactiver la journalisation de la sortie du port série.
Si vous souhaitez créer une règle d'alerte basée sur les journaux pour ce type d'événement, utilisez la requête suivante :
resource.type=gce_instance log_id(serialconsole.googleapis.com%2Fserial_port_1_output) textPayload=~("No space left on device" OR "Failed to mount" OR "You are in emergency mode")
Mise à jour du groupe d'instances géré
Ce type d'événement vous aide à déterminer quand votre groupe d'instances géré (MIG) présente ont été mises à jour. Par exemple, des VM ont été ajoutées ou supprimées, ou si la limite de taille a été modifiée. Pour en savoir plus, consultez la section Appliquer automatiquement les mises à jour de configuration de VM dans un MIG.
Si vous souhaitez créez une règle d'alerte basée sur les journaux pour cette type d'événement, utilisez la requête suivante:
resource.type=gce_instance_group_manager log_id(cloudaudit.googleapis.com%2Factivity) operation.first=true protoPayload.methodName=(beta.compute.instanceGroupManagers.patch OR v1.compute.instanceGroupManagers.patch)
Pour en savoir plus, consultez Utiliser des instances gérées et Explorez la résolution des problèmes liés aux groupes d'instances gérés.
Autoscaler de groupe d'instances géré
Cet événement suit les décisions de scaling prises par l'autoscaler d'un MIG. Ces décisions peuvent inclure des modifications de la taille recommandée pour un MIG, ou d'un changement d'état de l'autoscaler lui-même. Pour en savoir plus, consultez la page Effectuer l'autoscaling des groupes d'instances.
Si vous souhaitez créer une règle d'alerte basée sur les journaux pour ce type d'événement, utilisez la requête suivante :
resource.type=autoscaler log_id(cloudaudit.googleapis.com%2Fsystem_event) protoPayload.methodName=(compute.autoscalers.resize OR compute.autoscalers.changeStatus)
Types d'événements Personalized Service Health
Cette section décrit les types Personalized Service Health qui peuvent être affichés sur un tableau de bord.
Incident Google Cloud
Lorsque vous effectuez un dépannage, vous pouvez différencier les échecs causés par un service que vous possédez de ceux causés par un service Google Cloud que vous utilisez. Lorsque vous activez les annotations Personalized Service Health (État de service personnalisé) sur un tableau de bord, vous pouvez afficher les interruptions (ou événements d'état de service) pour les services Google Cloud. Pour obtenir la liste des services intégrés à Service Health, consultez Produits Google compatibles
Contrairement aux autres types d'événements, les incidents Google Cloud ne sont pas identifiés en analysant vos entrées de journal. Si vous souhaitez être averti lorsque ces événements se produisent, créer une règle d'alerte. Vous pouvez sélectionner une règle d'alerte préconfigurée à l'aide des options de la page Tableau de bord de l'état du service. Pour en savoir plus, consultez Démarrage rapide : Configurer une alerte.
La surveillance identifie les incidents Google Cloud en envoyant une requête à l'API Service Health, puis en filtrant la réponse aux incidents pertinents pour les données que vous consultez. La requête présente la configuration suivante :
L'énumération
Relevance
est définie surRELATED
,IMPACTED
ouPARTIALLY_RELATED
. Cette restriction garantit que votre tableau de bord n'affiche que les événements des services Google Cloud utilisés par votre projet Google Cloud.L'énumération
DetailedState
n'est pas définie surFALSE_POSITIVE
Les annotations de l'état de service sont affichées avec une heure de début et une durée. La durée est affichée en modifiant la couleur d'arrière-plan du graphique. Info-bulle pour un incident Google Cloud identifie les éléments suivants:
- Le service Google Cloud.
- Indique si l'incident est ouvert ou résolu.
- Date et heure de début de l'événement.
- Chips affichant le nombre de produits et d'emplacements concernés Pour lister les produits ou emplacements concernés, placez votre curseur sur la sur le chip correspondant.
- Un bouton Afficher qui, une fois sélectionné, ouvre la page d'informations de la l'incident.
Pour savoir comment envoyer une demande au API Service Health, consultez Recherchez les interruptions avec Service Health.
Pour obtenir des informations de dépannage, consultez Résolvez les problèmes courants liés à Service Health.
Types d'événements de test de disponibilité
Cette section décrit les types d'événements de tests de disponibilité pouvant être affichés sur une tableau de bord.
Échec du test de disponibilité
Ce type d'événement vous aide à identifier les échecs de tests de disponibilité dans différentes régions.
Si vous souhaitez créez une règle d'alerte basée sur les journaux pour cette type d'événement, utilisez la requête suivante:
log_id(monitoring.googleapis.com%2Fuptime_checks) ( resource.type=uptime_url OR resource.type=gce_instance OR resource.type=gae_app OR resource.type=k8s_service OR resource.type=servicedirectory_service OR resource.type=cloud_run_revision OR resource.type=aws_ec2_instance OR resource.type=aws_elb_load_balancer ) labels.uptime_result_type=UptimeCheckResult severity=NOTICE
Pour en savoir plus, consultez la page Résoudre les problèmes liés aux moniteurs synthétiques et aux tests de disponibilité.
Étape suivante
Pour découvrir comment afficher des événements sur vos tableaux de bord, consultez Afficher des événements sur un tableau de bord.