Questa pagina è una continuazione approfondita della discussione e degli esempi presentato in Metriche, serie temporali e risorse. Componenti del modello di metrica. Per ottenere il massimo da questa pagina, leggi prima queste pagine.
Questa pagina è rivolta ai lettori che vogliono approfondire le serie temporali e l'implementazione del modello metrico di Cloud Monitoring, in particolare a coloro che utilizzano l'API Monitoring. Sono inclusi gli utenti delle metriche personalizzate (definite dall'utente).Questa pagina mappa il modello di metriche generali all'API Cloud Monitoring, pertanto è utile per chiunque utilizzi direttamente l'API Monitoring. Utenti la cui l'interazione principale è con la console Google Cloud probabilmente non è necessaria livello di dettaglio.
È utile anche per chiunque utilizzi un'integrazione di terze parti come OpenTelemetry. Come dati da una fonte esterna raggiunge Cloud Monitoring attraverso un'integrazione, viene mappata del modello di metrica di Cloud Monitoring e trattata come qualsiasi altro dato di metrica.
Per ulteriori informazioni sulla raccolta delle tue metriche, consulta Panoramica delle metriche definite dall'utente.
Revisione del modello di metrica
Un prerequisito per comprendere la struttura delle serie temporali è la familiarità con il modello metrico utilizzato da Cloud Monitoring. Questo modello è descritto in Metriche, serie temporali e risorse. Questa sezione fornisce una breve recensione.
In termini generali, i dati di monitoraggio vengono registrati in serie temporali. Ogni singola serie temporale include tre informazioni pertinenti a questa discussione:
- Un insieme di punti dati con timestamp.
- Un riferimento al tipo di metrica che indica come interpretare i punti dati.
Un riferimento alla risorsa monitorata da cui hanno avuto origine i dati.
Ogni serie temporale contiene le misurazioni di una singola origine fisica o logica. Se il tuo ambiente ha centinaia di risorse, ognuna contribuisce con almeno una serie temporale. Infatti, se il tipo di metrica e il tipo di risorsa monitorata hanno etichette, ottieni una serie temporale per ogni combinazione di valori delle etichette. Per ulteriori informazioni, consulta la sezione Cardinalità.
Un esempio di serie temporale
Una serie temporale è rappresentata come un'istanza di un
TimeSeries
.
Di seguito è riportata un'istanza completa di una singola serie temporale:
{ "metric": { "labels": { "log": "kubelet", "severity": "DEFAULT" }, "type": "logging.googleapis.com/log_entry_count" }, "resource": { "type": "gce_instance", "labels": { "instance_id": "5106847938295940291", "zone": "us-central1-a", "project_id": "a-gcp-project" } }, "metricKind": "DELTA", "valueType": "INT64", "points": [ { "interval": { "startTime": "2019-12-20T20:25:38Z", "endTime": "2019-12-20T20:26:38Z" }, "value": { "int64Value": "20" } } ] }
La maggior parte delle serie temporali include molti più punti dati; questa copre un intervallo di un minuto. Tutte le serie temporali hanno la stessa struttura, con seguenti campi:
Record del campo
metric
- I valori delle etichette delle metriche per questa particolare serie temporale, che rappresentano una combinazione di valori delle etichette.
- Il tipo di metrica a cui sono associati i dati. Il tipo di metrica specifica le etichette disponibili e descrive cosa viene rappresentato dai punti dati.
Le informazioni contenute in questo campo sono descritte più dettagliatamente in Metriche.
Il campo
resource
registra:- I valori dell'etichetta della risorsa per questa particolare serie temporale, che rappresentano uno una combinazione di valori di etichette.
- La risorsa monitorata specifica da cui sono stati raccolti i dati.
Le informazioni in questo campo sono descritte in maggiore dettaglio in Oggetti delle risorse monitorate.
I campi
metricKind
evalueType
indicano come interpretare i valori. Per ulteriori informazioni, consulta Tipi e tipi di metriche.Il campo
points
è un array di valori con timestamp. Il tipo di metrica indica cosa rappresentano i valori. La serie temporale di esempio ha un array con un singolo punto dati. Nella maggior parte delle serie temporali, l'array ha molti più valori.
Per un esempio pratico che recupera i dati delle serie temporali, consulta Serie temporali: dati di una risorsa monitorata.
Nella parte restante della pagina vengono prese in considerazione le informazioni presenti nei campi metric
e resource
.
in modo più dettagliato.
Risorse monitorate
Cloud Monitoring raccoglie i dati dalle risorse monitorate e li registra in serie temporali. Ogni serie temporale creata include una descrizione della risorsa monitorata da cui sono stati raccolti i dati.
Oggetto Risorsa monitorata
Una risorsa monitorata è rappresentata da un'istanza di un
MonitoredResource
. La risorsa monitorata descrive
l'origine dei valori in una serie temporale.
L'oggetto MonitoredResource
è incorporato nelle serie temporali e
identifica un'istanza specifica di un tipo di risorsa monitorata
Monitoraggio: punta a un'entità fisica o logica.
Ad esempio, di seguito è riportato un oggetto monitored-resource che descrive una determinata istanza Compute Engine, estratta dalla serie temporale di esempio:
"resource": { "type": "gce_instance", "labels": { "instance_id": "5106847938295940291", "zone": "us-central1-a", "project_id": "a-gcp-project" } }
Questa istanza di una risorsa monitorata è di tipo gce_instance
, ha
un valore instance_id
specifico (5106847938295940291) nel progetto a-gcp-project
.
L'istanza si trova negli Stati Uniti. Un'altra serie temporale potrebbe provenire da un'istanza diversa di questa risorsa monitorata. Ogni combinazione di valori di etichetta identifica una risorsa unica da cui vengono raccolti i dati.
Set di etichette diversi hanno senso per risorse diverse. L'insieme di etichette per una risorsa è determinato dal descrittore della risorsa monitorata per quel tipo.
Descrittori delle risorse monitorate
Le informazioni su un tipo di risorsa monitorata sono contenute in una struttura di dati chiamata descrittore della risorsa monitorata. Per una definizione di questa
struttura di dati, consulta MonitoredResourceDescriptor
.
Un descrittore della risorsa monitorata è simile a uno schema o a una specifica per una struttura di record. Non contiene i dati relativi a una determinata istanza della risorsa monitorata, ma indica come descrivere una risorsa monitorata di un tipo specifico. Ad esempio, di seguito è riportato il descrittore della risorsa monitorata per la risorsa gce_instance
:
{ "type": "gce_instance", "displayName": "VM Instance", "description": "A virtual machine instance hosted in Compute Engine.", "name": "projects/[PROJECT_ID]/monitoredResourceDescriptors/gce_instance" "labels": [ { "key": "project_id", "description": "The identifier of the GCP project associated with this resource, such as \"my-project\"." }, { "key": "instance_id", "description": "The numeric VM instance identifier assigned by Compute Engine." }, { "key": "zone", "description": "The Compute Engine zone in which the VM is running." } ], }
Confronta questo descrittore della risorsa monitorata con l'istanza specifica di una risorsa gce_instance
mostrata in Oggetti
della risorsa monitorata.
Questo descrittore non descrive una determinata risorsa monitorata, ma specifica le etichette e ogni combinazione di valori delle etichette identifica una determinata risorsa monitorata.
Puoi recuperare i descrittori delle risorse monitorate nel tuo progetto Google Cloud
mediante l'API Cloud Monitoring. Vedi, ad esempio, le pagine di riferimento per
monitoredResourceDescriptors.list
e
monitoredResourceDescriptors.get
metodi.
Esempio pubblicato: se hai un progetto Google Cloud, puoi recuperarlo utilizzando il widget Explorer API come segue:
Apri la pagina di riferimento
monitoredResourceDescriptors.list
.Nel riquadro con l'etichetta Prova questo metodo, inserisci quanto segue:
name:
projects/PROJECT_ID/monitoredResourceDescriptors/gce_instance
Sostituisci
PROJECT_ID
con l'ID del tuo progetto Google Cloud.
Fai clic su Execute (Esegui).
La richiesta restituisce il descrittore precedente.
Per esempi di utilizzo dei metodi dell'API Monitoring, consulta Elenca i tipi di metriche e risorse.
Metriche
Ogni serie temporale creata da Cloud Monitoring registra un set di punti dati nonché informazioni sull'organizzazione e sul significato di questi punti dati.
Oggetti metrica
Ogni serie temporale include un riferimento alla descrizione dei dati registrati in un oggetto metrica.
L'oggetto metrica contenuto in una serie temporale specifica il tipo di misurazioni
e metriche specifiche su tali misurazioni.
Per una definizione della metrica
sulla struttura dei dati di un oggetto, vedi Metric
.
Ad esempio, di seguito è riportato l'oggetto metrica
estratto dalla serie temporale in
Una serie temporale di esempio:
{ "metric": { "labels": { "log": "kubelet", "severity": "DEFAULT" }, "type": "logging.googleapis.com/log_entry_count" }
Questo oggetto indica che la serie temporale contiene
Misurazioni logging.googleapis.com/log_entry_count
. L'etichetta
indicano che questa specifica serie temporale conteggia solo le voci di log
della gravità DEFAULT
nel file di log denominato kubelet
.
Esiste una serie temporale per ogni combinazione di valori delle etichette, pertanto le vociINFO
dello stesso file di log vengono visualizzate in una serie temporale diversa.
L'insieme di etichette raccolte in un oggetto metrica è specificato nel descrittore per quel tipo di metrica.
Descrittori delle metriche
Le informazioni su un tipo di metrica si trovano in una struttura di dati denominata
un descrittore della metrica. Per una definizione
sulla struttura dei dati, vedi MetricDescriptor
.
Un descrittore delle metriche è uno schema o una specifica per una struttura di record. Non contiene i dati relativi a una determinata metrica, ma indica come interpretare i dati associati a un tipo di metrica specifico.
Ecco un esempio di descrittore delle metriche:
{ "type": "logging.googleapis.com/log_entry_count", "name": "projects/a-gcp-project/metricDescriptors/logging.googleapis.com/log_entry_count", "labels": [ { "key": "log", "description": "Name of the log." }, { "key": "severity", "description": "Severity of the log entry." } ], "metricKind": "DELTA", "valueType": "INT64", "unit": "1", "description": "Number of log entries that contributed to user-defined metrics.", "displayName": "Log entries", "metadata": { "launchStage": "GA", "samplePeriod": "60s" }, "launchStage": "GA" }
Confronta questo descrittore della metrica con l'oggetto metrica mostrato in Oggetti metrica. Il descrittore indica cosa e su come interpretare i valori dei punti dati.
Puoi recuperare i descrittori delle metriche utilizzando l'API Cloud Monitoring. Consulta, ad esempio, le pagine di riferimento per i metodi metricDescriptors.list
e metricDescriptors.get
.
Esempio pubblicato: se hai un progetto Google Cloud, puoi recuperarlo utilizzando il widget Explorer API come segue:
Apri la pagina di riferimento di
metricDescriptors.list
.Nel riquadro con l'etichetta Prova questo metodo, inserisci quanto segue:
- nome:
projects/PROJECT_ID/metricDescriptors/logging.googleapis.com/log_entry_count
SostituisciPROJECT_ID
con l'ID del tuo progetto Google Cloud.
- nome:
Fai clic su Execute (Esegui).
La richiesta restituisce il descrittore precedente.
Per esempi di utilizzo dei metodi dell'API Monitoring, vedi Elenca i tipi di metriche e risorse.
La maggior parte dei campi nel descrittore della metrica è autoesplicativa. La due che potrebbero richiedere ulteriori spiegazioni sono il tipo di metrica e il tipo di valore, descritti più in dettaglio in Tipi e tipi di metriche.
Cloud Monitoring dispone di circa 6500 tipi di metriche integrate. Per informazioni dettagliate, consulta l'elenco delle metriche. Puoi anche creare i tuoi descrittori di metrica per acquisire metriche personalizzate. Per ulteriori informazioni, consulta la panoramica delle metriche definite dall'utente.