Questo documento descrive i tipi di eventi che possono essere mostrati come annotazioni sui grafici. Un evento è un'attività, ad esempio un riavvio o un arresto anomalo, che influisce il funzionamento di un sistema. La visualizzazione degli eventi può aiutarti a correlare i dati provenienti da origini diverse durante la risoluzione di un problema.
Per ogni evento vengono forniti link a riferimenti o documentazione per la risoluzione dei problemi, nonché informazioni su come eseguire query sull'evento. Ad esempio, quando gli eventi vengono identificati analizzando i log, una query adatta all'uso con Esplora log o con un viene fornito un criterio di avviso.
Per aggiungere annotazioni ai grafici, configura la dashboard o la scheda che li mostra. Ad esempio, puoi configurare la maggior parte delle dashboard elencati nella pagina Dashboard della console Google Cloud per mostrare gli eventi. Analogamente, puoi configurare alcune schede Osservabilità specifiche per i servizi, come quelle per Compute Engine e Google Kubernetes Engine, per mostrare gli eventi. Per informazioni di configurazione, consulta Mostrare gli eventi in una dashboard.
Il seguente screenshot illustra un grafico che mostra diversi di eventi identificati analizzando le voci di log e Evento Service Health:
Ogni annotazione può elencare più eventi. Nello screenshot precedente, un evento per un deployment GKE.
Tipi di eventi di avviso
Questa sezione descrive i tipi di eventi di avviso che possono essere visualizzati in una dashboard.
Avviso aperto
Gli eventi aperti dagli avvisi ti aiutano a correlare i dati dei grafici a quando incidenti aperti. Un evento di apertura dell'avviso viene visualizzato quando si verificano le seguenti condizioni:
- L'incidente corrispondente è stato aperto durante l'intervallo di tempo specificato dalla dashboard.
- L'incidente corrispondente non è chiuso.
Non sono presenti annotazioni create per gli incidenti aperti al di fuori del specificato dalla dashboard. Analogamente, L'evento di avviso aperto non viene mostrato all'apertura dell'incidente corrispondente e successivamente chiuso nell'intervallo di tempo specificato dalla dashboard.
La descrizione comando per un evento di apertura dell'avviso include quanto segue:
- Nome del criterio di avviso.
- Informazioni di riepilogo, se disponibili. Ad esempio, questo potrebbero includere la soglia e il valore misurato.
- La durata dell'incidente, nonché la data e l'ora. quando è stato aperto l'incidente.
- Etichette di metriche ed risorse. La descrizione comando potrebbe non mostrare tutte le etichette.
- Un pulsante Visualizza che apre la pagina Dettagli dell'incidente.
Tipi di eventi di Google Kubernetes Engine
Questa sezione descrive i tipi di eventi Google Kubernetes Engine che possono essere mostrato in una dashboard.
Carico di lavoro GKE con patch o aggiornato
Questo tipo di evento consente di risolvere i problemi di GKE il deployment dei carichi di lavoro o le modifiche statefulset, poiché questi eventi possono essere correlati regressioni delle prestazioni o altri problemi di prestazioni. Questo tipo di evento viene visualizzato quando un carico di lavoro viene creato, aggiornato o eliminato.
Se vuoi creare un criterio di avviso basato su log per questo tipo di evento, utilizza la seguente query:
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)
Per ulteriori informazioni, vedi Panoramica del deployment dei carichi di lavoro e Visualizza le metriche di osservabilità.
Arresto anomalo di un pod GKE
Questo tipo di evento ti aiuta a identificare e risolvere i problemi Il pod GKE si arresta in modo anomalo. Gli arresti anomali dei pod possono essere causati da esaurimento della memoria o da un errore dell'applicazione. Questo tipo di evento viene mostrato quando si verifica una delle seguenti condizioni:
- Lo stato del pod è
CrashLoopBackoff
- Il pod termina con un codice di uscita diverso da zero.
- Il pod termina con una condizione di esaurimento della memoria.
- Il pod viene rimosso.
- Il probe di idoneità/attività ha esito negativo.
Se vuoi crea un criterio di avviso basato su log per questo tipo di evento, utilizza la seguente query:
( 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 ) ) )
Per informazioni sulla risoluzione dei problemi, consulta Risoluzione dei problemi: CrashLoopBackOff.
Impossibile pianificare un pod GKE
Questo tipo di evento consente di identificare e risolvere i problemi relativi ai pod che non possono essere è stata pianificata su un nodo. Questo tipo di evento viene visualizzato quando la pianificazione dei pod non va a buon fine per uno dei seguenti motivi:
- CPU nodo insufficiente.
- Memoria del nodo insufficiente.
- Nessun nodo per incompatibilità o tolleranze.
- Nodi al limite massimo di pod.
- Pool di nodi alla dimensione massima.
Se vuoi crea un criterio di avviso basato su log per questo tipo di evento, utilizza la seguente query:
( 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:* )
Per informazioni sulla risoluzione dei problemi, consulta Risoluzione dei problemi: pod non pianificabile.
Impossibile creare un container GKE
Questo tipo di evento consente di identificare e risolvere gli errori per creare un container GKE. La creazione dei container potrebbe non riuscire a causa come montaggi del volume non riusciti o pull delle immagini non riusciti.
Se vuoi creare un criterio di avviso basato su log per questo tipo di evento, utilizza la seguente query:
log_id(events) resource.type=k8s_pod jsonPayload.reason=(Failed OR FailedMount) severity=WARNING
Per informazioni sulla risoluzione dei problemi, vedi Risoluzione dei problemi: ImagePullBackOff ed ErrImagePull.
Scale up e scale down del gestore della scalabilità automatica dei pod
Questo evento ti consente di visualizzare le ridimensionamenti di Horizontal Pod Autoscaler, che aumentano o diminuiscono il numero di pod in esecuzione per un carico di lavoro. Per ulteriori informazioni, consulta la sezione Scalabilità automatica pod orizzontale.
Se vuoi creare un criterio di avviso basato su log per questo tipo di evento, utilizza la seguente query:
resource.type=k8s_cluster log_id(events) jsonPayload.involvedObject.kind=HorizontalPodAutoscaler jsonPayload.reason=SuccessfulRescale
Scale up e scale down del gestore della scalabilità automatica del cluster
Questo evento ti consente di sapere quando il gestore della scalabilità automatica dei cluster aumenta o diminuisce il numero di nodi in un pool di nodi del tuo cluster. Per ulteriori informazioni, consulta Informazioni sulla scalabilità automatica dei cluster e Visualizzazione degli eventi di scalabilità automatica del cluster.
Se vuoi crea un criterio di avviso basato su log per questo tipo di evento, utilizza la seguente query:
(resource.type=k8s_cluster log_id(container.googleapis.com%2Fcluster-autoscaler-visibility) jsonPayload.decision:*)
Creazione ed eliminazione del cluster
Questo evento monitora le azioni di creazione ed eliminazione del cluster GKE. Per ulteriori informazioni, vedi Crea un cluster Autopilot, Creazione di un cluster di zona e Eliminazione di un cluster.
Se vuoi crea un criterio di avviso basato su log per questo tipo di evento, utilizza la seguente query:
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
Aggiornamento del cluster
Questo evento monitora gli aggiornamenti del cluster GKE. Gli aggiornamenti includono upgrade automatici delle versioni del piano di controllo, nonché upgrade manuali modifiche alla configurazione del cluster. Per ulteriori informazioni, consulta Eseguire l'upgrade manuale di un cluster o di un pool di nodi e Upgrade di cluster standard.
Se vuoi crea un criterio di avviso basato su log per questo tipo di evento, utilizza la seguente query:
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)
Aggiornamento del pool di nodi
Questo evento monitora gli aggiornamenti del pool di nodi GKE. Gli aggiornamenti includono upgrade automatici delle versioni del pool di nodi, oltre ad upgrade manuali, modifiche alla configurazione e ridimensionamenti. Per ulteriori informazioni, vedi Upgrade manuale di un cluster o di un pool di nodi e gli upgrade dei cluster standard.
Se vuoi crea un criterio di avviso basato su log per questo tipo di evento, utilizza la seguente query:
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 )
Tipi di eventi Cloud Run
Questa sezione descrive i tipi di eventi Cloud Run che possono essere mostrato in una dashboard.
Deployment di Cloud Run
Questo tipo di evento ti aiuta a identificare e risolvere i problemi di deployment di Cloud Run. Il deployment potrebbe non riuscire per diversi motivi account di servizio eliminato, autorizzazioni errate, importazione un container non è riuscito o l'avvio di un container non è riuscito.
Se vuoi creare un criterio di avviso basato su log per questo tipo di evento, utilizza la seguente query:
log_id(cloudaudit.googleapis.com%2Factivity) resource.type=cloud_run_revision protoPayload.methodName=google.cloud.run.v1.Services.ReplaceService
Per informazioni sulla risoluzione dei problemi, consulta Risoluzione dei problemi: problemi di Cloud Run.
Tipi di eventi Cloud SQL
Questa sezione descrive i tipi di eventi Cloud SQL che possono essere visualizzati in una dashboard.
Failover di Cloud SQL
Questo tipo di evento consente di identificare quando si verificano failover manuali o automatici. Un failover si verifica in caso di errore di un'istanza o una zona e l'istanza in standby diventa la nuova istanza principale. Durante un failover, Cloud SQL passa automaticamente all'erogazione dei dati dall'istanza in standby.
Se vuoi creare un criterio di avviso basato su log per questo tipo di evento, utilizza la seguente query:
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 ) )
Per ulteriori informazioni, vedi Informazioni sull'alta disponibilità.
Avvio o arresto di Cloud SQL
Questo tipo di evento consente di identificare che un'istanza Cloud SQL è stata è stato avviato, arrestato o riavviato. Quando un'istanza viene arrestata, vengono arrestate anche tutte le connessioni, i file aperti e le operazioni in esecuzione.
Se vuoi crea un criterio di avviso basato su log per questo tipo di evento, utilizza la seguente query:
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)
Per ulteriori informazioni, vedi Informazioni sull'alta disponibilità e Avvia, arresta e riavvia le istanze.
Spazio di archiviazione di Cloud SQL
Questo tipo di evento ti aiuta a identificare gli eventi relativi allo spazio di archiviazione di Cloud SQL, tra cui quando lo spazio di archiviazione del database è esaurito e quando un database viene arrestato perché ha raggiunto la capacità di archiviazione. I database che raggiungono la capacità di archiviazione e che non hanno l'archiviazione automatica abilitata potrebbero essere arrestati per evitare il danneggiamento dei dati.
Se vuoi creare un criterio di avviso basato su log per questo tipo di evento, utilizza la seguente query:
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 ) )
Tipi di eventi Compute Engine
Questa sezione descrive i tipi di eventi Compute Engine che possono essere mostrato in una dashboard.
Terminazioni delle macchine virtuali
Questo tipo di evento ti aiuta a identificare le terminazioni delle macchine virtuali (VM), tra cui reimpostazioni e interruzioni attivate manualmente, chiusure del sistema operativo guest, terminazioni delle attività di manutenzione ed errori dell'host.
Se vuoi crea un criterio di avviso basato su log per questo tipo di evento, utilizza la seguente query:
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 ) ) )
Per ulteriori informazioni, consulta Arrestare e avviare una VM e Risoluzione dei problemi di arresto e riavvio delle VM.
Errore di avvio dell'istanza VM
Questo evento monitora gli errori di avvio delle istanze VM di Compute Engine. L'evento mostra errori di avvio dovuti a problemi di disponibilità, esaurimento dello spazio IP, quota superata o errori di integrità della Shielded VM.
Se vuoi crea un criterio di avviso basato su log per questo tipo di evento, utilizza la seguente query:
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" ) )
Errore del sistema operativo guest dell'istanza VM
Questo evento monitora errori specifici del sistema operativo guest delle istanze VM di Compute Engine, così come vengono registrati dai log della console seriale. Gli errori rilevati riguardano disco pieno, montaggio del file system non riuscito e problemi di mancato avvio che attivano la modalità di emergenza di Linux.
Affinché questi eventi siano visibili, devi abilitare il logging dell'output della porta seriale in Cloud Logging impostando serial-port-logging-enable=true
nella VM o nei metadati del progetto. Per ulteriori informazioni, vedi
Attivazione e disattivazione del logging dell'output della porta seriale
Se vuoi creare un criterio di avviso basato su log per questo tipo di evento, utilizza la seguente query:
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")
Aggiornamento del gruppo di istanze gestite
Questo tipo di evento ti aiuta a identificare quando il gruppo di istanze gestite (MIG) è stato aggiornato. Ad esempio, sono state aggiunte o rimosse VM oppure il limite di dimensioni è stato aggiornato. Per ulteriori informazioni, consulta la pagina relativa all'applicazione automatica degli aggiornamenti di configurazione delle VM in un gruppo di istanze gestite.
Se vuoi crea un criterio di avviso basato su log per questo tipo di evento, utilizza la seguente query:
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)
Per ulteriori informazioni, consulta Utilizzare le istanze gestite e Risolvere i problemi relativi ai gruppi di istanze gestite.
Gestore della scalabilità automatica del gruppo di istanze gestite
Questo evento monitora le decisioni di scalabilità prese dal gestore della scalabilità automatica di un gruppo di istanze gestite. Queste decisioni potrebbero includere modifiche alle dimensioni consigliate per un gruppo di istanze gestite, o una modifica dello stato del gestore della scalabilità automatica. Per ulteriori informazioni, consulta Gruppi di istanze a scalabilità automatica.
Se vuoi creare un criterio di avviso basato su log per questo tipo di evento, utilizza la seguente query:
resource.type=autoscaler log_id(cloudaudit.googleapis.com%2Fsystem_event) protoPayload.methodName=(compute.autoscalers.resize OR compute.autoscalers.changeStatus)
Tipi di eventi di Personalized Service Health
Questa sezione descrive i tipi di stato del servizio personalizzato che possono essere visualizzati in una dashboard.
Incidente Google Cloud
Quando devi risolvere i problemi, è consigliabile distinguere tra errori causati da un servizio di tua proprietà e uno causato da un servizio Google Cloud che utilizzi. Quando attivi le annotazioni di Personalized Service Health in una dashboard, puoi visualizzare le interruzioni o gli eventi relativi allo stato del servizio per i servizi Google Cloud. Per un elenco di servizi integrati con Service Health, vedi Prodotti Google supportati.
A differenza di altri tipi di eventi, gli incidenti di Google Cloud non vengono identificati dall'analisi le tue voci di log. Se vuoi ricevere una notifica quando si verificano questi eventi, crea un criterio di avviso. Puoi selezionare un criterio di avviso preconfigurato utilizzando le opzioni disponibili nella pagina Dashboard di Service Health. Per ulteriori informazioni, consulta la sezione Guida rapida: configurazione di un avviso.
Monitoring identifica gli incidenti di Google Cloud inviando una richiesta all'API Service Health, quindi filtrando a quegli incidenti che sono rilevanti per i dati visualizzati. La richiesta ha la seguente configurazione:
L'enumerazione
Relevance
è impostata suRELATED
,IMPACTED
oPARTIALLY_RELATED
. Questa limitazione garantisce che solo la dashboard e visualizza gli eventi per i servizi Google Cloud in uso nel progetto Google Cloud.L'enumerazione
DetailedState
non è impostata suFALSE_POSITIVE
.
Le annotazioni di stato del servizio vengono visualizzate con un'ora di inizio e una durata. La durata viene visualizzata modificando il colore di sfondo del grafico. La descrizione comando di un incidente Google Cloud identifica quanto segue:
- Il servizio Google Cloud.
- Indica se l'incidente è aperto o risolto.
- Data e ora di inizio dell'evento.
- Chip che mostrano il numero di sedi e prodotti interessati. Per elencare i prodotti o le località interessati, posiziona il cursore sul chip corrispondente.
- Un pulsante Visualizza, che, una volta selezionato, apre la pagina dei dettagli del incidente.
Per informazioni su come inviare una richiesta all'API Service Health, consulta Verificare la presenza di interruzioni con Service Health.
Per informazioni sulla risoluzione dei problemi, consulta Risolvere i problemi comuni in Stato servizio.
Tipi di eventi dei controlli di uptime
Questa sezione descrive i tipi di eventi di controllo di uptime che possono essere visualizzati in una dashboard.
Errore del controllo di uptime
Questo tipo di evento ti aiuta a identificare gli errori del controllo di uptime delle regioni configurate.
Se vuoi creare un criterio di avviso basato su log per questo tipo di evento, utilizza la seguente query:
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
Per informazioni sulla risoluzione dei problemi, vedi Risolvere i problemi relativi ai monitoraggi sintetici e ai controlli di uptime.
Passaggi successivi
Per scoprire come mostrare gli eventi nelle dashboard, consulta Mostrare gli eventi in una dashboard.