Importa le dashboard di Grafana in Cloud Monitoring

Questo documento descrive come importare i file della dashboard nel formato JSON di Grafana in Cloud Monitoring. Puoi importare le dashboard di Grafana nei seguenti modi:

La procedura di importazione converte i file della dashboard nel formato JSON utilizzato da Grafana nel formato JSON utilizzato da Cloud Monitoring. Una dashboard convertita potrebbe essere diversa dalla dashboard Grafana originale. Ad esempio, se una dashboard Grafana utilizza funzionalità non disponibili nelle dashboard di Cloud Monitoring, questi aspetti della dashboard Grafana non vengono convertiti. Queste differenze sono elencate nei risultati dell'importazione.

Puoi importare solo le dashboard che utilizzano espressioni PromQL e origini dati Prometheus. Le dashboard che utilizzano altre forme di query o origini dati potrebbero non essere importate correttamente.

Per informazioni sull'importazione degli avvisi di Prometheus in Cloud Monitoring, consulta Eseguire la migrazione di regole e destinatari degli avvisi da Prometheus.

Per informazioni generali sulla gestione delle dashboard importate, consulta Creare e gestire dashboard personalizzate.

Prima di iniziare

Indipendentemente dal fatto che tu utilizzi la console Google Cloud o lo strumento di importazione per importare le dashboard, devi disporre dell'autorizzazione sufficiente e avere dashboard da importare. Quando utilizzi lo strumento di importazione, sono previsti prerequisiti aggiuntivi.

Autorizzazione

Per ottenere le autorizzazioni necessarie per creare e modificare dashboard personalizzate, chiedi all'amministratore di concederti il ruolo IAM Editor monitoraggio (roles/monitoring.editor) nel progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.

Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.

Per ulteriori informazioni sui ruoli, consulta Controllare l'accesso con Identity and Access Management.

Raccogliere le dashboard di Grafana da importare

Per importare le dashboard di Grafana, devi averle archiviate localmente come file in formato JSON. Ti consigliamo di creare una directory specifica per questi file della dashboard.

Importare le dashboard utilizzando la console Google Cloud

Puoi importare le dashboard di Grafana in Cloud Monitoring dai seguenti punti della console Google Cloud:

  • La scheda Elenco dashboard nella pagina Dashboard di Monitoring.
  • La sezione della dashboard dell'elenco di controllo per l'onboarding nella pagina Panoramica di Monitoring.

Importa le dashboard di Grafana

Per importare una o più dashboard di Grafana:

  1. Vai alla pagina Dashboard o Panoramica in Monitoring:

    • Nella console Google Cloud, vai alla pagina  Dashboard:

      Vai a Dashboard

      Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.

    • Nella console Google Cloud, vai alla pagina Panoramica di Monitoring:

      Vai a Panoramica

      Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.

  2. Fai clic su  Importa dashboard Grafana.

  3. Fai clic su Sfoglia per accedere alla directory in cui hai archiviato le dashboard Grafana in formato JSON e seleziona le dashboard da importare.

    Ogni file JSON viene sottoposto a staging dopo la selezione. Il riquadro File sottoposti a staging indica se si verificano problemi durante la conversione.

    • Fai clic su  Visualizza JSON convertito per visualizzare i risultati della conversione.
    • Fai clic su  Rimuovi file per rimuovere una dashboard dall'operazione di importazione.
  4. Fai clic su  Importa. Il riquadro Risultati dell'importazione indica se ogni dashboard è stata importata correttamente.

  5. Per visualizzare una dashboard importata correttamente, fai clic su  Visualizza.

Visualizzare le dashboard importate

Per visualizzare le dashboard importate:

  1. Nella console Google Cloud, vai alla pagina  Dashboard:

    Vai a Dashboard

    Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.

  2. Individua la dashboard che vuoi visualizzare nell'elenco. Per filtrare l'elenco delle dashboard:

    • Seleziona la categoria Personalizzata per visualizzare solo le dashboard definite dall'utente.
    • Seleziona l'etichetta cloud-monitoring-dashboard-importer per visualizzare solo le dashboard Grafana importate utilizzando la console Google Cloud.
    • Utilizza la barra dei filtri per cercare per nome.

Importare le dashboard utilizzando lo strumento di importazione

Puoi utilizzare lo strumento di importazione per convertire le dashboard di Grafana e caricarle in Cloud Monitoring come un'unica operazione oppure puoi eseguire i passaggi di conversione e caricamento separatamente. Potresti scegliere questo approccio se vuoi modificare le dashboard convertite prima di caricarle.

Prerequisiti aggiuntivi

Prima di poter installare ed eseguire l'importatore della dashboard, devi:

  1. Utilizza un ambiente che supporta gli script shell Bash.
  2. Avere o installare Git.
  3. Avere o installare Node.js, versione 20.4.1 o successiva.
  4. Avere o installare Google Cloud CLI. Se hai già installato gcloud CLI, assicurati di avere la versione più recente eseguendo il comando gcloud components update.

Ottenere l'importatore della dashboard

L'importatore di dashboard è archiviato nel monitoring-dashboard-samples repository GitHub. Per ottenere l'importatore:

  1. Clona il repository:

    git clone https://github.com/GoogleCloudPlatform/monitoring-dashboard-samples
    
  2. Passa alla directory dell'importatore di dashboard:

    cd monitoring-dashboard-samples/scripts/dashboard-importer
    

L'importatore della dashboard include i seguenti script:

  • import.sh, che converte le dashboard e, facoltativamente, le carica in Cloud Monitoring.

  • upload.sh, che carica le dashboard convertite o qualsiasi dashboard di monitoraggio in Cloud Monitoring. Lo script import.sh chiama questo script per eseguire il caricamento.

Quando utilizzi lo script import.sh, devi specificare la posizione delle dashboard di Grafana da convertire. L'importatore crea una directory contenente le dashboard convertite e altre informazioni. Le sezioni seguenti descrivono queste directory.

Dashboard Grafana da convertire

Puoi utilizzare l'importatore di dashboard per convertire una o più dashboard alla volta specificando un percorso per i file delle dashboard.

  • Puoi specificare il percorso di una directory contenente dashboard. Vengono elaborati solo i file nella directory con estensione .json.

  • Puoi specificare il percorso di un singolo file JSON. Il nome del file deve avere l'estensione .json.

Dashboard convertite e altre informazioni

Quando l'importatore viene eseguito per la prima volta, crea una sottodirectory reports. Ogni volta che esegui l'importatore, nella directory reports viene creata una nuova directory di output, denominata in base alla data e all'ora. Il nome della directory di output ha la seguente struttura:
reports/YYYY-M-D/HH:MM:SS

Per ogni chiamata dell'importatore, la directory di output contiene quanto segue:

  • Uno o più file con gli stessi nomi delle dashboard Grafana originali, ma ora in formato JSON di Cloud Monitoring.
  • Un file report.json che registra le seguenti informazioni per ogni dashboard convertita:
    • Il nome e la posizione del file della dashboard di Grafana convertito.
    • Il nome e la posizione del file della dashboard di monitoraggio convertito.
    • Notifiche relative a eventuali funzionalità della dashboard di Grafana che non hanno una funzionalità corrispondente in Cloud Monitoring e che pertanto non potevano essere incluse nella dashboard convertita.
    • Eventuali errori verificatisi durante la conversione.

Se hai caricato le dashboard, la directory dei report include anche un file upload_HH:MM:SS.txt, che include l'URL a cui è stata caricata la dashboard.

Importa le dashboard di Grafana

Per convertire le dashboard di Grafana e caricarle in Cloud Monitoring, utilizza lo script import.sh:

./import.sh PATH_TO_DIRECTORY_OR_FILE PROJECT_ID

Questo script esegue le seguenti operazioni:

  1. Converte le dashboard in PATH_TO_DIRECTORY_OR_FILE dal formato JSON utilizzato da Grafana al formato JSON utilizzato da Cloud Monitoring.
  2. Carica le dashboard convertite nel tuo progetto Google Cloud PROJECT_ID utilizzando Google Cloud CLI.

    Se non hai eseguito l'autenticazione all'interfaccia alla gcloud CLI, esegui il comando gcloud auth login prima di eseguire lo script import.sh.

Puoi importare tutte le dashboard di Grafana in una directory oppure puoi specificare una singola dashboard nella directory da importare.

  • Per importare tutte le dashboard nella directory GRAFANA_DASHBOARDS_DIR nel progetto Google Cloud PROJECT_ID, specifica la directory relativa alla directory dell'importatore e l'ID progetto di destinazione quando richiami lo script:

    ./import.sh GRAFANA_DASHBOARDS_DIR PROJECT_ID
    
  • Per convertire solo la dashboard MY_GRAFANA_DASHBOARD.json nella directory GRAFANA_DASHBOARDS_DIR, includi il nome del file della dashboard rispetto alla directory dell'importatore quando richiami lo script:

    ./import.sh GRAFANA_DASHBOARDS_DIR/MY_GRAFANA_DASHBOARD.json PROJECT_ID
    

L'importatore di dashboard include una dashboard Grafana di esempio come examples/k8s_cluster_example.json. Il seguente comando importa la dashboard nel progetto specificato:

./import.sh examples/k8s_cluster_example.json PROJECT_ID

Se viene invocato con PROJECT_ID my-project-test-1, l'output è simile al seguente:

Converting: Kubernetes Cluster Overview
✓ Kubernetes Cluster Overview converted successfully

Conversion of examples/k8s_cluster_example.json complete. Conversion Report located at: reports/2023-9-28/22:14:57/report.json


To upload these dashboard(s) manually, you can run:
./upload.sh reports/2023-9-28/22:14:57/ <PROJECT_ID>

Conversion Complete. Proceeding to uploading...

Now running: ./upload.sh reports/2023-9-28/22:14:57/ my-project-test-1

Uploading 1 dashboard(s) from a directory with the following args:
Directory: reports/2023-9-28/22:14:57/
Project: my-project-test-1

The following are your dashboards:
- k8s_cluster_example.json

Dopo che lo script import.sh ha creato la directory di output e convertito le dashboard, ma prima di caricarle nel progetto, ti chiede conferma. Inserisci y e lo script carica la dashboard e stampa l'URL della nuova dashboard:

Would you like to continue? (y/n) y

✓ k8s_cluster_example.json successfully uploaded:
https://console.cloud.google.com/monitoring/dashboards/builder/9c341ef8-cfef-4bdd-98d5-821571c520ef?project=my-project-test-1

Upload log created in reports/2023-9-28/22:14:57/upload_22:14:57.txt

Need to troubleshoot? Please visit:
https://github.com/GoogleCloudPlatform/monitoring-dashboard-samples/tree/master/scripts/dashboard-importer/README.md#troubleshooting

Convertire le dashboard di Grafana senza caricarle

Se vuoi ispezionare o modificare le dashboard convertite prima di caricarle, ometti il valore PROJECT_ID quando richiami lo script import.sh:

./import.sh PATH_TO_DIRECTORY_OR_FILE

L'importatore converte le dashboard come descritto in Importare le dashboard di Grafana, ma non le carica in Cloud Monitoring.

Puoi eseguire il passaggio di caricamento in un secondo momento utilizzando manualmente lo script upload.sh.

Caricare le dashboard manualmente

Per caricare manualmente le dashboard in formato JSON di Cloud Monitoring, utilizza lo script upload.sh.

    ./upload.sh PATH_TO_DIRECTORY_OR_FILE PROJECT_ID

Lo script upload.sh utilizza Google Cloud CLI per caricare i file JSON. Se non hai eseguito l'autenticazione nell'interfaccia alla gcloud CLI, esegui il comando gcloud auth login prima di eseguire lo script upload.sh.

  • Per caricare tutte le dashboard in una directory reports/YYYY-M-D/HH:MM:SS, specifica la directory relativa alla directory dell'importatore e l'ID progetto di destinazione quando richiami lo script:

    ./upload.sh reports/YYYY-M-D/HH:MM:SS PROJECT_ID
    

    Quando carichi tutte le dashboard da una directory, lo script ti chiede di continuare o uscire prima di caricarle.

  • Per caricare una dashboard specifica in una directory reports/YYYY-M-D/HH:MM:SS, specifica la directory e il nome del file, rispetto alla directory dell'importatore, nonché l'ID progetto di destinazione quando richiami lo script:

    ./upload.sh reports/YYYY-M-D/HH:MM:SS/MY_MONITORING_DASHBOARD.json PROJECT_ID
    

    Quando carichi una singola dashboard da una directory, lo script viene eseguito senza richiedere conferma prima del caricamento delle dashboard.

Ad esempio, il seguente comando carica una dashboard memorizzata in una sottodirectory reports nel progetto Google Cloud my-project-test-1:

./upload.sh reports/2023-9-26/22:48:31/k8s_cluster_example.json my-project-test-1
Uploading json file: k8s_cluster_example.json to project: my-project-test-1...

✓ k8s_cluster_example.json successfully uploaded:
https://console.cloud.google.com/monitoring/dashboards/builder/25956d9a-93e2-410c-ada1-ec6872cb6665?project=my-project-test-1

Visualizzare le dashboard caricate

Per visualizzare le dashboard caricate:

  1. Nella console Google Cloud, vai alla pagina  Dashboard:

    Vai a Dashboard

    Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.

  2. Individua la dashboard che vuoi visualizzare nell'elenco. Per filtrare l'elenco delle dashboard:

    • Seleziona la categoria Personalizzata per visualizzare solo le dashboard definite dall'utente.
    • Seleziona l'etichetta cloud-ops-grafana-importer per visualizzare solo le dashboard Grafana importate utilizzando lo strumento di importazione.
    • Utilizza la barra dei filtri per cercare per nome.

Risoluzione dei problemi

Di tanto in tanto pubblichiamo piccoli aggiornamenti e correzioni di bug allo strumento. Prima di tentare ulteriori operazioni di risoluzione dei problemi, prova a risolvere il problema utilizzando git pull per scaricare la versione più recente del repository e poi importa di nuovo.

Per informazioni sui problemi relativi alle dashboard convertite, come i grafici che non mostrano i dati, consulta il file README dell'importatore.

Passaggi successivi