Questo documento fornisce una panoramica dei servizi forniti da Cloud Monitoring. Questi servizi possono aiutarti a comprendere il comportamento, l'integrità e le prestazioni delle tue applicazioni e di altri servizi Google Cloud. Cloud Monitoring raccoglie e archivia automaticamente le informazioni sulle prestazioni per la maggior parte dei servizi Google Cloud. Puoi raccogliere le metriche di Prometheus utilizzando Google Cloud Managed Service per Prometheus. Se installi Ops Agent sulle tue macchine virtuali (VM) di Compute Engine, puoi raccogliere metriche e log dalle tue applicazioni e da applicazioni di terze parti.
I servizi di avviso, test e visualizzazione forniti da Cloud Monitoring consentono di rispondere a domande importanti come le seguenti:
- Qual è il carico sul mio servizio?
- Il mio sito web risponde correttamente?
- Il mio servizio ha un buon rendimento?
Cloud Monitoring fornisce il supporto della console Google Cloud e delle API per la maggior parte dei propri servizi. Alcuni servizi supportano anche Google Cloud CLI o Terraform. Le pagine di riferimento dell'API Cloud Monitoring, ad esempio la pagina alertPolicies.list
, ti consentono di sperimentare le chiamate API direttamente dalla pagina di riferimento.
Servizi di Cloud Monitoring
Cloud Monitoring offre diversi servizi che puoi utilizzare per comprendere l'integrità e le prestazioni delle tue applicazioni e degli altri servizi Google Cloud che utilizzi.
Avvisi e notifiche
Per ricevere una notifica quando il valore di una metrica relativa alle prestazioni soddisfa i criteri da te definiti, crea un criterio di avviso. Il criterio di avviso include l'elenco di persone o gruppi che devono ricevere le notifiche. Monitoring supporta canali di notifica comuni, tra cui email, app mobile Cloud e servizi come PagerDuty o Slack. Ad esempio, puoi creare un criterio di avviso in modo da ricevere una notifica quando l'utilizzo della CPU di una VM supera l'80%.
Ogni notifica include informazioni pertinenti su un errore e un link a un incidente. Un incidente è un record permanente che memorizza le informazioni che puoi utilizzare per risolvere l'errore. In genere, un record elenca lo stato dell'incidente, i link ai log, un grafico dei dati delle metriche registrati, le etichette e la durata.
Il servizio di avviso è integrato in molti servizi Google Cloud. Quando esistono queste integrazioni, potresti visualizzare un riquadro che elenca gli avvisi consigliati o un pulsante in un grafico che ti consente di creare un criterio di avviso. In entrambi i casi, i criteri di avviso sono preconfigurati. Devi specificare solo l'elenco di persone o gruppi da notificare.
Puoi creare e gestire i criteri di avviso utilizzando la console Google Cloud, l'API Cloud Monitoring, Google Cloud CLI o Terraform.
Monitoraggio e convalida proattivi
Per testare la disponibilità, la coerenza e le prestazioni di servizi, applicazioni, pagine web e API, crea monitor sintetici. Ad esempio, puoi verificare la reattività degli endpoint HTTP, HTTPS e TCP con i controlli di uptime, per poi ricevere una notifica quando un endpoint non risponde. Puoi anche creare uno strumento di controllo dei link inaccessibili per eseguire la scansione di una pagina web e ricevere una notifica quando vengono rilevati link inaccessibili.
Puoi creare e gestire i monitoraggi sintetici utilizzando la console Google Cloud, l'API Cloud Monitoring, Google Cloud CLI o Terraform.
Visualizzazione dei dati
Per visualizzare i dati e visualizzare le tendenze, identificare i valori anomali e visualizzare altri dettagli sui dati, puoi utilizzare i servizi di dashboard e creazione di grafici:
Il servizio di dashboard crea automaticamente una dashboard gestita da Google Cloud quando aggiungi una risorsa al tuo progetto Google Cloud. Ad esempio, viene creata una dashboard quando crei un'istanza di Compute Engine, un criterio di avviso o un monitoraggio sintetico. Puoi utilizzare queste dashboard per visualizzare le informazioni sulle prestazioni e sulla configurazione, ad esempio l'utilizzo del disco o l'indirizzo IP, e per visualizzare gli eventi.
Per controllare quali dati visualizzi e il relativo formato, crea una dashboard personalizzata. Ad esempio, potresti importare una dashboard di Grafana o installare una dashboard da un modello. Le dashboard personalizzate possono visualizzare grafici, tabelle, log e gruppi di errori, criteri di avviso, incidenti e testo. Puoi anche condividere dashboard personalizzate con persone o gruppi della tua organizzazione e configurare queste dashboard per visualizzare gli eventi.
Puoi creare e gestire le dashboard utilizzando la console Google Cloud o l'API.
Il servizio di grafici Metrics Explorer, consente di visualizzare ed esplorare rapidamente i dati delle serie temporali. Le impostazioni del grafico ti consentono di confrontare i dati attuali con i dati precedenti, visualizzare valori anomali e percentuali e visualizzare più metriche. Puoi anche salvare i grafici in una dashboard personalizzata.
Raccolta e archiviazione dei dati
Cloud Monitoring raccoglie e archivia i seguenti tipi di dati delle metriche:
- Metriche di sistema generate dai servizi Google Cloud. Queste metriche forniscono informazioni sul funzionamento di un servizio.
- Metriche di sistema e delle applicazioni raccolte da Ops Agent relative alle risorse di sistema e alle applicazioni in esecuzione su istanze di Compute Engine. Puoi configurare Ops Agent in modo che raccolga metriche da plug-in di terze parti, come i server web Apache o Nginx oppure i database MongoDB o PostgreSQL.
Metriche definite dall'utente create utilizzando l'API Cloud Monitoring o una libreria come OpenTelemetry.
Metriche esterne definite da alcune librerie open source o provider di terze parti.
Metriche di Prometheus raccolte da Google Cloud Managed Service per Prometheus o utilizzando Ops Agent e il ricevitore Prometheus o il ricevitore OLTP.
- Metriche basate su log che registrano informazioni numeriche sui log scritti in Cloud Logging. Le metriche basate su log definite da Google includono i conteggi degli errori rilevati dal servizio e il numero totale di voci di log ricevute dal tuo progetto Google Cloud. Puoi anche definire metriche basate su log.
Lingue di query
Quando crei un criterio di avviso o un grafico, devi fornire una query che descriva i dati che vuoi monitorare o creare in un grafico:
Console Google Cloud: puoi creare una query effettuando selezioni dai menu o scriverne una. Gli editor delle query sono disponibili per Prometheus Query Language (PromQL) e Monitoraggio Query Language (MQL). Gli editor delle query forniscono controlli della sintassi e suggerimenti. Puoi anche scrivere un'espressione di filtro di Monitoring.
API Cloud Monitoring: l'API supporta Prometheus Query Language (PromQL), query MQL ed espressioni di filtro di Monitoring.
Monitora gli impianti di grandi dimensioni
Questa sezione descrive come gestire le risorse come raccolta e come monitorare le metriche archiviate in più progetti Google Cloud.
Gestire le risorse come raccolta
Per gestire le risorse come raccolta anziché singolarmente, crea un gruppo di risorse. Un gruppo di risorse è una raccolta dinamica di risorse che soddisfano alcuni criteri da te forniti. Quando aggiungi e rimuovi risorse, ad esempio aggiungendo istanze VM di Compute Engine al progetto Google Cloud, l'appartenenza al gruppo cambia automaticamente. Di seguito sono riportati alcuni esempi di gruppi di risorse:
- Istanze Compute Engine i cui nomi iniziano con la stringa
prod-
. - Risorse con il tag
test-cluster
. - Istanze Amazon EC2 nella regione A o nella regione B.
Dopo aver definito un gruppo di risorse, puoi monitorarlo come se fosse una singola risorsa. Ad esempio, puoi configurare un controllo di uptime per monitorare un gruppo di risorse. Per i grafici e i criteri di avviso, puoi anche filtrare in base al nome del gruppo.
Per saperne di più, consulta Configurare i gruppi di risorse.
Monitoraggio delle metriche per più progetti Google Cloud
Per visualizzare e monitorare i dati delle serie temporali per più progetti Google Cloud e account AWS tramite un'unica interfaccia, configura un ambito delle metriche multiprogetto.
Per impostazione predefinita, le pagine di Cloud Monitoring nella console Google Cloud consentono di accedere solo alle serie temporali archiviate nel progetto di ambito. Il progetto di definizione dell'ambito è quello che hai selezionato con il selettore di progetti della console Google Cloud. Il progetto di definizione dell'ambito archivia gli avvisi, i monitor sintetici, le dashboard e i gruppi di monitoraggio che hai configurato.
Il progetto di definizione dell'ambito ospita anche un ambito delle metriche. L'ambito delle metriche definisce i progetti e gli account le cui metriche sono visibili al progetto di definizione dell'ambito. Puoi configurare l'ambito delle metriche in modo da includere i dati delle serie temporali di altri progetti Google Cloud e di account AWS. Per informazioni su come modificare un ambito delle metriche, consulta Configurare un ambito delle metriche per più progetti.
Modello dei dati di Cloud Monitoring
Questa sezione introduce il modello dei dati di Cloud Monitoring:
Un tipo di metrica descrive un elemento misurato. Esempi di tipi di metriche includono l'utilizzo della CPU di una VM e la percentuale di un disco utilizzato.
Una serie temporale è una struttura di dati contenente le misurazioni con timestamp di una metrica, nonché informazioni sull'origine e sul significato di queste misurazioni.
Di seguito sono riportati alcuni dettagli su ciò che contiene una serie temporale:
L'array
points
contiene le misurazioni con timestamp.Di seguito è riportato un esempio di array
points
con due valori:"points": [ { "interval": { "startTime": "2020-07-27T20:20:21.597143Z", "endTime": "2020-07-27T20:20:21.597143Z" }, "value": { "doubleValue": 0.473005 } }, { "interval": { "startTime": "2020-07-27T20:19:21.597239Z", "endTime": "2020-07-27T20:19:21.597239Z" }, "value": { "doubleValue": 0.473025 } }, ],
Per comprendere il significato di un valore, devi fare riferimento agli altri dati inclusi nella serie temporale e alle definizioni di questi dati.
Il campo
resource
descrive il componente hardware o software che viene monitorato. In Cloud Monitoring, il componente hardware o software viene definito risorsa monitorata. Esempi di risorse monitorate includono le istanze di Compute Engine e le applicazioni App Engine. Per un elenco delle risorse monitorate, consulta l'elenco delle risorse monitorate.Di seguito è riportato un esempio di campo
resource
:"resource": { "type": "gce_instance", "labels": { "instance_id": "2708613220420473591", "zone": "us-east1-b", "project_id": "sampleproject" } }
Nel campo
type
la risorsa monitorata viene elencata comegce_instance
, a indicare che queste misurazioni vengono eseguite su un'istanza VM di Compute Engine.Il campo
labels
contiene coppie chiave-valore che forniscono informazioni aggiuntive sulla risorsa monitorata. Per un tipogce_instance
, le etichette identificano l'istanza VM monitorata.
Il campo
metric
descrive cosa viene misurato.Di seguito è riportato un esempio di campo
metric
:"metric": { "labels": { "instance_name": "test" }, "type": "compute.googleapis.com/instance/cpu/utilization" },
Per i servizi Google, il campo
type
consente di specificare il servizio e cosa viene monitorato. In questo esempio, il servizio Compute Engine che misura l'utilizzo della CPU. Quando il campotype
inizia concustom
oexternal
, la metrica è metrica personalizzata oppure definita da una terza parte.Il campo
labels
contiene coppie chiave-valore che forniscono informazioni aggiuntive sulla misurazione. Queste etichette sono definite come parte diMetricDescriptor
, una struttura di dati che definisce gli attributi dei dati misurati.MetricDescriptor
per la metricacompute.googleapis.com/instance/cpu/utilization
include l'etichettainstance_name
.
Il campo
metricKind
descrive la relazione tra misurazioni adiacenti all'interno di una serie temporale:Le metriche
GAUGE
memorizzano il valore dell'elemento misurato in un determinato momento, ad esempio un record della temperatura oraria.Le metriche
CUMULATIVE
memorizzano il valore accumulato dell'oggetto misurato in un determinato momento, ad esempio un contachilometri in un veicolo.Le metriche
DELTA
memorizzano la variazione del valore dell'elemento misurato in un determinato periodo, ad esempio un riepilogo delle azioni che mostra i guadagni o le perdite del titolo.
Il campo
valueType
descrive il tipo di dati per la misurazione:INT64
,DOUBLE
,BOOL
,STRING
oDISTRIBUTION
.
Cloud Monitoring scrive una serie temporale per ogni combinazione di valori di etichette delle risorse e delle metriche. Puoi usarle per raggruppare e filtrare le serie temporali. Ad esempio, quando un progetto Google Cloud contiene più istanze VM di Compute Engine, l'utilizzo della CPU per ogni istanza VM corrisponde a una serie temporale univoca. Ecco alcuni modi in cui puoi visualizzare questi dati:
- Puoi mostrare l'utilizzo della CPU per ogni istanza VM.
- Puoi mostrare l'utilizzo della CPU per una specifica istanza VM filtrando le serie temporali per un singolo valore dell'etichetta
instance_id
. Puoi raggruppare le istanze VM in base all'etichetta
machine_type
e visualizzare l'utilizzo medio della CPU. Lo screenshot seguente illustra un grafico con questa configurazione:
Prezzi
In generale, le metriche di sistema di Cloud Monitoring sono gratuite, mentre quelle provenienti da sistemi, agenti o applicazioni esterni. Le metriche fatturabili vengono fatturate in base al numero di byte o al numero di campioni importati.
Per maggiori informazioni sui prezzi di Cloud Monitoring, consulta i seguenti documenti:
Passaggi successivi
- Per esplorare Cloud Monitoring, prova la Guida rapida per il monitoraggio di un'istanza di Compute Engine.
- Per informazioni su come configurare il nostro progetto Google Cloud per visualizzare le metriche per più progetti Google Cloud e account AWS, consulta la panoramica degli ambiti delle metriche.
Per informazioni sul modello dei dati di Cloud Monitoring, consulta Metriche, serie temporali e risorse.
Per informazioni sull'API Cloud Monitoring, consulta API e riferimento.
Per un elenco di metriche e risorse monitorate, consulta Elenco delle metriche ed Elenco delle risorse monitorate.