Importa le dashboard di Grafana in Cloud Monitoring

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

Il processo di importazione converte i file della dashboard nel formato JSON utilizzato da Grafana nel formato JSON utilizzato da Cloud Monitoring. Una dashboard convertita potrebbe differire dalla dashboard Grafana originale. Ad esempio, se una dashboard Grafana utilizza funzionalità non disponibili nelle dashboard 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 Prometheus in Cloud Monitoring, consulta Eseguire la migrazione di regole di avviso e destinatari da Prometheus.

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

Prima di iniziare

Che tu utilizzi la console Google Cloud o lo strumento di importazione per importare le tue dashboard, devi disporre di un'autorizzazione sufficiente e devi avere le dashboard da importare. Quando utilizzi lo strumento di importazione, esistono prerequisiti aggiuntivi.

Autorizzazione

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

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

Per saperne di più sui ruoli, consulta Controllare l'accesso con Identity and Access Management.

Raccogli le dashboard Grafana da importare

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

Importare dashboard utilizzando la console Google Cloud

Puoi importare le dashboard Grafana in Cloud Monitoring dalla pagina Dashboard di Monitoring nella console Google Cloud .

Importa dashboard Grafana

Per importare una o più dashboard Grafana:

  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. Nella barra degli strumenti della console Google Cloud , seleziona il tuo progetto Google Cloud . Per le configurazioni di App Hub, seleziona il progetto host di App Hub o il progetto di gestione della cartella app.

  3. Fai clic su Importa dashboard.

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

    Ogni file JSON viene preparato dopo la selezione. Il riquadro File preparati indica se ci sono problemi nella conversione.

    • Fai clic su  Visualizza JSON convertito per vedere i risultati della conversione.
    • Fai clic su  Rimuovi file per rimuovere un report dall'operazione di importazione.
  5. Fai clic su  Importa. Il riquadro Importa risultati indica se ogni dashboard è stata importata correttamente.

  6. 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. Nella barra degli strumenti della console Google Cloud , seleziona il tuo progetto Google Cloud . Per le configurazioni di App Hub, seleziona il progetto host di App Hub o il progetto di gestione della cartella app.
  3. Individua la dashboard che vuoi visualizzare nell'elenco. Per filtrare l'elenco delle dashboard:

    • Nel menu Tipo, seleziona Personalizzato.
    • Nel riquadro Etichette, 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 eseguire la ricerca per nome.

Aggiungere o rimuovere etichette definite dall'utente

Puoi aggiungere etichette solo alle dashboard personalizzate, incluse quelle che importi. Quando una dashboard mostra il pulsante Aggiungi etichette alla dashboard, puoi configurare le etichette da applicare alla dashboard.

Per aggiungere o rimuovere etichette definite dall'utente in una dashboard:

  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. Nell'elenco delle dashboard, individua la dashboard e poi fai clic su Aggiungi etichette alla dashboard.
  3. Esegui una delle seguenti operazioni:
    • Per creare un'etichetta e aggiungerla alla dashboard, nella sezione Crea una nuova etichetta, inserisci il nome dell'etichetta nella casella di testo e poi fai clic su Crea e applica.

    • Per configurare le etichette da aggiungere alla dashboard, fai clic su Seleziona le etichette da applicare, seleziona le etichette e poi fai clic su Ok.
  4. Per salvare le modifiche, fai clic su Conferma.

Importare dashboard utilizzando lo strumento di importazione

Puoi utilizzare lo strumento di importazione per convertire le dashboard Grafana e caricarle in Cloud Monitoring come singola operazione oppure puoi eseguire la conversione e caricare i passaggi separatamente. Potresti scegliere questo approccio se vuoi modificare i prospetti convertiti prima di caricarli.

Prerequisiti aggiuntivi

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

  1. Utilizza un ambiente che supporti gli script della 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 l'ultima versione eseguendo il comando gcloud components update.

Ottenere lo strumento di importazione delle dashboard

L'importatore di dashboard è archiviato nel repository GitHub monitoring-dashboard-samples. Per ottenere e configurare 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
    
  3. Installa i moduli del nodo e crea i file

    npm install && npm run build
    

L'importatore di dashboard include i seguenti script:

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

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

Quando utilizzi lo script import.sh, devi specificare la posizione dei dashboard 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 ai 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

La prima volta che viene eseguito, l'importatore crea una sottodirectory reports. Ogni volta che esegui l'importatore, ottieni una nuova directory di output nella directory reports, 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 Grafana convertito.
    • Il nome e la posizione del file della dashboard di monitoraggio convertita.
    • Avvisi relativi a funzionalità nella dashboard Grafana che non hanno una funzionalità corrispondente in Cloud Monitoring e che pertanto non è stato possibile includere nella dashboard convertita.
    • Eventuali errori che si sono verificati durante la conversione.

Se hai caricato i report, la directory dei report include anche un file upload_HH:MM:SS.txt, che include l'URL a cui è stato caricato il report.

Importa dashboard Grafana

Per convertire le dashboard 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 i dashboard in PATH_TO_DIRECTORY_OR_FILE dal formato JSON utilizzato da Grafana nel 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 a gcloud CLI, esegui il comando gcloud auth login prima di eseguire lo script import.sh.

Puoi importare tutte le dashboard 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 PROJECT_ID Google Cloud , 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 file della dashboard, relativo 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 richiamato 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 i prospetti, ma prima di caricare i prospetti convertiti nel tuo progetto, ti chiede una 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 Grafana senza caricamento

Se vuoi esaminare o modificare i dashboard convertiti prima di caricarli, 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 dashboard Grafana ma non carica le dashboard convertite in Cloud Monitoring.

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

Caricare manualmente le dashboard

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 allagcloud CLId, 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 caricare le dashboard.

  • Per caricare una dashboard specifica in una directory reports/YYYY-M-D/HH:MM:SS, specifica la directory e il nome file, relativi alla directory dell'importatore, e 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 l'intervento dell'utente prima del caricamento delle dashboard.

Ad esempio, il seguente comando carica una dashboard archiviata 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 eseguire la ricerca per nome.

Risoluzione dei problemi

Di tanto in tanto pubblichiamo piccoli aggiornamenti e correzioni di bug per lo strumento. Prima di tentare ulteriori risoluzioni dei problemi, prova prima a risolvere il problema utilizzando git pull per scaricare l'ultima versione del repository e poi importare di nuovo.

Per informazioni sui problemi relativi ai prospetti convertiti, ad esempio grafici che non mostrano dati, consulta il file README dell'importatore.

Passaggi successivi