Questo documento spiega come creare una metrica dei contatori basata su log utilizzando la Google Cloud console, l'API Logging e Google Cloud CLI.
Le_metriche dei contatori_ contano il numero di voci di log corrispondenti a un determinato filtro. Ad esempio, puoi creare una metrica basata su log che conta il numero di voci di log che contengono un messaggio di errore specifico. Le metriche basate su log possono essere applicate a un singolo Google Cloud progetto o a un bucket di log.
Per una panoramica delle metriche basate su log, consulta Panoramica delle metriche basate su log.
Prima di iniziare
Per utilizzare le metriche basate su log, devi avere un Google Cloud progetto con la fatturazione abilitata:
- Accedi al tuo Google Cloud account. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti senza costi per l'esecuzione, il test e il deployment dei workload.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Assicurati che il tuo ruolo Identity and Access Management includa le autorizzazioni necessarie per creare e visualizzare le metriche basate su log e per creare policy di avviso. Per maggiori dettagli, consulta Autorizzazioni per le metriche basate su log.
Crea una metrica dei contatori basata su log
La metrica conta le voci di log identificate da un filtro che fornisci. Puoi utilizzare le espressioni regolari nel filtro e ti consigliamo di includere un tipo di risorsa. La lunghezza di un filtro non può superare i 20.000 caratteri.
Non inserire informazioni sensibili nel filtro. I filtri vengono trattati come dati di servizio.
Console
Per creare una metrica dei contatori nella Google Cloud console del tuo Google Cloud progetto:
-
Nella Google Cloud console, vai alla pagina Metriche basate su log:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.
Fai clic su Crea metrica. Viene visualizzato il riquadro Crea una metrica.
Imposta il Tipo di metrica: seleziona Contatore.
Imposta i seguenti campi nella sezione Dettagli:
- Nome metrica di log: scegli un nome univoco tra le metriche basate su log nel tuo Google Cloud progetto. Si applicano alcune limitazioni ai nomi; per maggiori dettagli, consulta la sezione Risoluzione dei problemi.
- Descrizione: inserisci una descrizione per la metrica.
- Unità: lascia il campo vuoto o inserisci la cifra 1.
Definisci il filtro della metrica nella sezione Selezione filtro.
Utilizza il menu Seleziona progetto o bucket di log per scegliere se la metrica conta le voci di log nel tuo Google Cloud progetto o solo quelle voci di log in un bucket di log specifico.
Crea un filtro che raccolga solo le voci di log che vuoi contare nella metrica utilizzando il linguaggio di query di Logging. Puoi anche utilizzare le espressioni regolari per creare i filtri della metrica.
Per visualizzare le voci di log che corrispondono al filtro, fai clic su Anteprima log.
(Facoltativo) Aggiungi un'etichetta nella sezione Etichette. Per istruzioni sulla creazione delle etichette, consulta Creare un'etichetta.
Fai clic su Crea metrica per creare la metrica.
gcloud
Puoi creare una metrica basata su log senza etichette personalizzate utilizzando il seguente comando:
gcloud logging metrics create METRIC_NAME \ --description="METRIC_DESCRIPTION" \ --log-filter="FILTER" \ [--bucket-name="BUCKET_NAME"]
Ad esempio, il seguente comando crea una metrica basata su log con ambito di progetto denominata error_count.
gcloud logging metrics create error_count \
--description "Errors in syslog." \
--log-filter "resource.type=gce_instance AND log_id(\"syslog\") AND severity>=ERROR"
Per creare una metrica basata su log con ambito di bucket, fornisci il flag --bucket_name:
gcloud logging metrics create error_count \
--description "Errors in syslog." \
--log-filter "resource.type=gce_instance AND log_id(\"syslog\") AND severity>=ERROR" \
--bucket-name projects/my-project/locations/global/buckets/my-test-bucket
Per istruzioni sulla creazione delle etichette, consulta Configurare le etichette nelle metriche basate su log.
API
Per creare una metrica dei contatori, utilizza il
projects.metrics.create metodo dell'
API Logging. Se utilizzi il riquadro Explorer API nella pagina di riferimento, prepara gli argomenti come segue:
Imposta il campo parent sul progetto o sul bucket in cui deve essere creata la metrica:
- Per una metrica basata su log con ambito di progetto, specifica il progetto:
projects/PROJECT_ID
- Per una metrica basata su log con ambito di bucket, specifica il bucket:
projects/PROJECT_ID/locations/LOCATION/bucket/BUCKET_ID
Imposta il corpo della richiesta su un
LogMetricoggetto. Di seguito è riportato un oggetto di esempio per una metrica dei contatori:{ name: "my-metric" description: "This is my metric." filter: "resource.type=gce_instance AND log_id(\"syslog\")", metricDescriptor: { labels: [ { key: "my-label", valueType: STRING, description: "This is my label.", } ] }, labelExtractors: { "my-label": "REGEXP_EXTRACT(jsonPayload.someField, \"before ([0-9]+) after\")", ... }, }
Note:
Scegli un nome di metrica univoco tra le metriche basate su log nel tuo progetto. Si applicano alcune limitazioni ai nomi; per maggiori dettagli, consulta la sezione Risoluzione dei problemi.
Per le metriche dei contatori, i campi
LogMetricvalueExtractorebucketOptionsnon hanno alcuno scopo e vengono omessi.Se la metrica non ha etichette, puoi omettere i campi
metricDescriptorelabelExtractors. Se la metrica ha etichette, allora consulta Etichette delle metriche basate su log per un'introduzione alle etichette e dettagli sulla loro creazione nell'API.
Per maggiori dettagli, consulta il LogMetric tipo.
Latenza delle nuove metriche
La nuova metrica viene visualizzata immediatamente nell'elenco delle metriche di Esplora log e nei menu di Monitoring pertinenti. I dati sono in genere disponibili in meno di un minuto.
Esamina le metriche basate su log
Per elencare le metriche basate su log definite dall'utente nel tuo Google Cloud progetto o per esaminare una metrica specifica nel tuo Google Cloud progetto:
Console
-
Nella Google Cloud console, vai alla pagina Metriche basate su log:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.
Nel riquadro Metriche definite dall'utente, vengono visualizzate le metriche basate su log definite dall'utente nel progetto corrente: Google Cloud
Per visualizzare i dati in una metrica basata su log, fai clic sul more_vert Menu nella riga della metrica e seleziona Visualizza in Esplora metriche.
gcloud
Per elencare le metriche basate su log definite dall'utente nel tuo Google Cloud progetto, utilizza il seguente comando:
gcloud logging metrics list
Per visualizzare una metrica basata su log definita dall'utente nel tuo Google Cloud progetto, utilizza il seguente comando:
gcloud logging metrics describe METRIC_NAME
Per ricevere assistenza, utilizza il seguente comando:
gcloud logging metrics --help
Non puoi leggere i dati delle serie temporali di una metrica da Google Cloud CLI.
API
Elenca metriche
Per elencare le metriche basate su log definite dall'utente in un Google Cloud progetto, utilizza
il projects.metrics.list metodo API.
Compila i parametri del metodo come segue:
- parent: il nome della risorsa del Google Cloud progetto:
projects/PROJECT_ID. - pageSize: il numero massimo di risultati.
- pageToken: recupera la pagina successiva dei risultati. Per informazioni
sull'utilizzo dei token di pagina, consulta
projects.metrics.list.
Recupera le definizioni delle metriche
Per recuperare una singola metrica basata su log definita dall'utente, utilizza il
projects.metrics.get metodo API.
Compila i parametri del metodo come segue:
metricName: il nome della risorsa della metrica:
projects/PROJECT_ID/metrics/METRIC_ID
Lettura dei dati delle metriche
Per leggere i dati delle serie temporali in una metrica basata su log, utilizza
il projects.timeseries.list nell'
API Cloud Monitoring.
Per maggiori dettagli sui dati delle serie temporali, consulta
Leggere le serie temporali.
Per leggere una singola metrica basata su log definita dall'utente, compila i parametri del metodo con questo tipo e identificatore di metrica:
logging.googleapis.com/user/METRIC_ID
Aggiorna le metriche basate su log
Puoi modificare una metrica basata su log definita dall'utente per cambiarne la descrizione, il filtro e i nomi dei campi a cui fa riferimento la metrica. Puoi aggiungere nuove etichette alla metrica e modificare le espressioni regolari utilizzate per estrarre i valori per la metrica e le relative etichette. Se utilizzi una metrica con ambito di bucket, puoi anche aggiornare il bucket della metrica.
Non puoi modificare i nomi o i tipi di metriche basate su log definite dall'utente o le relative etichette e non puoi eliminare le etichette esistenti in una metrica basata su log.
Per modificare una metrica basata su log:
Console
-
Nella Google Cloud console, vai alla pagina Metriche basate su log:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.
Fai clic su Modifica metrica nel more_vert Menu per la metrica basata su log che vuoi modificare.
Modifica gli elementi consentiti nella metrica.
Fai clic su Aggiorna metrica.
gcloud
Utilizza Google Cloud CLI per modificare la descrizione, la query di filtro e il bucket di una metrica dei contatori. Puoi aggiornare tutti i campi contemporaneamente.
gcloud logging update METRIC_NAME \ --description="METRIC_DESCRIPTION" \ --log-filter="FILTER" \ --bucket-name=BUCKET_NAME
Se modifichi il bucket associato a una metrica con ambito di bucket, tutti i dati delle metriche raccolti prima della modifica non riflettono più la configurazione attuale. I dati delle metriche raccolti per il bucket precedente non vengono rimossi.
Per aggiornare le metriche di distribuzione o altri campi delle metriche dei contatori, ad eccezione di
METRIC_NAME, crea un file contenente la specifica rivista di
your LogMetric in formato JSON o YAML. Quindi, aggiorna la
metrica chiamando il update comando con il campo --config-from-file,
sostituendo FILENAME con il nome del file JSON o YAML:
gcloud logging update METRIC_NAME --config-from-file FILENAME
Per maggiori dettagli, utilizza il seguente comando:
gcloud logging metrics update --help
API
Per modificare una metrica basata su log, utilizza il
projects.metrics.update metodo nell'API.
Imposta i campi come segue:
metricName: il nome completo della risorsa della metrica:
projects/PROJECT_ID/metrics/METRIC_ID
Ad esempio:
projects/my-gcp-project/metrics/my-error-metric
Nel corpo della richiesta, includi un oggetto
LogMetricidentico alla metrica esistente, ad eccezione delle modifiche e delle aggiunte che vuoi apportare.
Elimina le metriche basate su log
Per eliminare una metrica basata su log definita dall'utente:
Console
-
Nella Google Cloud console, vai alla pagina Metriche basate su log:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.
Seleziona la metrica che vuoi eliminare e fai clic su Elimina.
In alternativa, fai clic su Elimina metrica nel more_vert menu della metrica basata su log che vuoi eliminare.
gcloud
Utilizza il seguente comando per eliminare una metrica basata su log definita dall'utente nel progetto corrente Google Cloud :
gcloud logging metrics delete METRIC_NAME
Per maggiori dettagli, utilizza il seguente comando:
gcloud logging metrics delete --help
API
Per eliminare una metrica basata su log definita dall'utente, utilizza il
projects.metrics.delete metodo nell'API.
Inoltre, nella pagina Google Cloud console Metrica basata su log, il riquadro Metriche definite dall'utente dell'interfaccia delle metriche basate su log offre altre funzionalità per aiutarti a gestire le metriche definite dall'utente nel tuo Google Cloud progetto. Per maggiori dettagli, consulta Metriche definite dall'utente.