L'importazione dei file della dashboard JSON di Grafana in Cloud Monitoring ti consente di riutilizzare le visualizzazioni Prometheus esistenti come dashboard personalizzate. Puoi convertire e caricare le dashboard di Grafana utilizzando la consoleGoogle Cloud o lo strumento di importazione a riga di comando.
Puoi importare solo dashboard che utilizzano espressioni PromQL e origini dati Prometheus. Se una dashboard include funzionalità di Grafana non supportate da Monitoring, il processo di importazione omette queste funzionalità ed elenca le differenze nei risultati dell'importazione.
Per eseguire la migrazione delle regole di avviso di Prometheus, consulta Esegui la migrazione delle regole di avviso e dei receiver da Prometheus. Per gestire le dashboard dopo averle importate, consulta Crea e gestisci dashboard personalizzate.
Prima di iniziare
Sia che utilizzi la console Google Cloud o lo strumento di importazione per importare le dashboard, devi disporre di un'autorizzazione sufficiente e di 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 Monitoring Editor (roles/monitoring.editor) nel 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 Controlla l'accesso con Identity and Access Management.
Raccogli 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.
Importa le dashboard utilizzando la console Google Cloud
Puoi importare le dashboard di Grafana in Cloud Monitoring dalla pagina Dashboard di Monitoring nella console Google Cloud .
Importa dashboard Grafana
Per importare una o più dashboard di Grafana, segui questi passaggi:
-
Nella console Google Cloud , vai alla pagina Dashboard:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.
Nella barra degli strumenti della console Google Cloud , seleziona il tuo progetto Google Cloud . Per le configurazioni di App Hub, seleziona il progetto host o il progetto di gestione di App Hub.
Fai clic su Importa dashboard.
Fai clic su Sfoglia per accedere alla directory in cui hai archiviato le dashboard di 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 sono presenti problemi nella conversione.
- Fai clic su code Visualizza JSON convertito per visualizzare i risultati della conversione.
- Fai clic su close Rimuovi file per rimuovere una dashboard dall'operazione di importazione.
Fai clic su save_alt Importa. Il riquadro Risultati dell'importazione indica se ogni dashboard è stata importata correttamente o meno.
Per visualizzare una dashboard importata correttamente, fai clic su open_in_new Visualizza.
Visualizza le dashboard importate
Per visualizzare le dashboard importate:
-
Nella console Google Cloud , vai alla pagina Dashboard:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.
- Nella barra degli strumenti della console Google Cloud , seleziona il tuo progetto Google Cloud . Per le configurazioni di App Hub, seleziona il progetto host o il progetto di gestione di App Hub.
Individua la dashboard che vuoi visualizzare nell'elenco. Per filtrare l'elenco delle dashboard, puoi:
- Nel menu Tipo, seleziona Personalizzato.
Nel riquadro Etichette, seleziona l'etichetta
cloud-monitoring-dashboard-importerper visualizzare solo le dashboard di Grafana importate utilizzando la console Google Cloud .Utilizza la barra dei filtri per eseguire una ricerca in base al nome.
Aggiungi o rimuovi 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 applicate alla dashboard.
Per aggiungere o rimuovere etichette definite dall'utente in una dashboard:
-
Nella console Google Cloud , vai alla pagina Dashboard:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.
- Nell'elenco delle dashboard, individua la dashboard e poi fai clic su Aggiungi etichette alla dashboard.
- 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 fai clic su Crea e applica.
- Per configurare le etichette da aggiungere alla dashboard, fai clic su arrow_drop_down Seleziona le etichette da applicare, seleziona le etichette e poi fai clic su Ok.
- Per salvare le modifiche, fai clic su Conferma.
Importa le dashboard utilizzando lo strumento di importazione
Puoi utilizzare lo strumento di importazione per convertire le dashboard di Grafana e caricarle su Cloud Monitoring in un'unica operazione oppure puoi eseguire i passaggi di conversione e caricamento separatamente. Puoi scegliere questo approccio se vuoi modificare le dashboard convertite prima di caricarle.
Prerequisiti aggiuntivi
Prima di poter installare ed eseguire l'importatore di dashboard, devi:
- Utilizza un ambiente che supporti gli script di shell Bash.
- Avere o installare Git.
- Avere o installare Node.js, versione 20.4.1 o successiva.
- Avere o installare Google Cloud CLI. Se hai già installato gcloud CLI, assicurati di avere l'ultima versione eseguendo il comando
gcloud components update.
Ottieni l'importatore della dashboard
L'importatore della dashboard è archiviato nel repository GitHub monitoring-dashboard-samples.
Per ottenere e configurare l'importatore, segui questi passaggi:
Clona il repository:
git clone https://github.com/GoogleCloudPlatform/monitoring-dashboard-samples
Passa alla directory dell'importatore della dashboard:
cd monitoring-dashboard-samples/scripts/dashboard-importer
Installa i moduli Node e crea i file:
npm install && npm run build
L'importatore di dashboard include i seguenti script:
import.sh, che converte le dashboard e, facoltativamente, le carica su Cloud Monitoring.upload.sh, che carica le dashboard convertite o qualsiasi dashboard di Monitoring su Cloud Monitoring. Lo scriptimport.shchiama 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 che contiene 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 della dashboard.
Puoi specificare il percorso di una directory che contiene dashboard. Vengono elaborati solo i file della directory con l'estensione
.json.Puoi specificare il percorso di un singolo file JSON. Il nome 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, viene creata 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 di Grafana convertito.
- Il nome e la posizione del file della dashboard di Monitoring convertito.
- Avvisi relativi a eventuali funzionalità della dashboard di Grafana che non hanno una funzionalità corrispondente in Cloud Monitoring e che, pertanto, non possono essere incluse nella dashboard convertita.
- Eventuali errori che si sono verificati durante la conversione.
Se hai caricato le dashboard, la directory dei report include anche un file upload_HH:MM:SS.txt, che contiene l'URL in cui è stata caricata la dashboard.
Importa dashboard Grafana
Per convertire le dashboard Grafana e caricarle su Cloud Monitoring, utilizza lo script import.sh:
./import.sh PATH_TO_DIRECTORY_OR_FILE PROJECT_ID
Questo script esegue le seguenti operazioni:
- Converte le dashboard in
PATH_TO_DIRECTORY_OR_FILEdal formato JSON utilizzato da Grafana nel formato JSON utilizzato da Cloud Monitoring. Carica le dashboard convertite nel tuo progetto Google Cloud PROJECT_ID utilizzando Google Cloud CLI.
Se non hai eseguito l'autenticazione con gcloud CLI, esegui il comando
gcloud auth loginprima di eseguire lo scriptimport.sh.
Puoi importare tutte le dashboard di Grafana in una directory o specificare una singola dashboard nella directory da importare.
Per importare tutte le dashboard nella directory
GRAFANA_DASHBOARDS_DIRnel 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.jsonnella directoryGRAFANA_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 comando seguente 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 le dashboard, ma prima di caricare le dashboard convertite nel progetto, ti viene chiesta 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
Converti 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
Lo strumento di importazione converte le dashboard come descritto in Importa le dashboard di 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.
Carica 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 in 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:SSPROJECT_IDQuando 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_IDQuando carichi una singola dashboard da una directory, lo script viene eseguito senza chiederti conferma prima di caricare le 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
Visualizza le dashboard caricate
Per visualizzare le dashboard caricate:
-
Nella console Google Cloud , vai alla pagina Dashboard:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.
Individua la dashboard che vuoi visualizzare nell'elenco. Per filtrare l'elenco delle dashboard, puoi:
- Seleziona la categoria Personalizzata per visualizzare solo le dashboard definite dall'utente.
- Seleziona l'etichetta
cloud-ops-grafana-importerper visualizzare solo le dashboard di Grafana importate utilizzando lo strumento di importazione. - Utilizza la barra dei filtri per eseguire una ricerca in base al nome.
Risoluzione dei problemi
A volte pubblichiamo piccoli aggiornamenti e correzioni di bug per lo strumento. Prima di tentare ulteriori operazioni di risoluzione dei problemi, prova a risolvere il problema utilizzando git pull per scaricare l'ultima versione del repository e poi importala di nuovo.
Per informazioni sui problemi relativi alle dashboard convertite, ad esempio i grafici che non mostrano i dati, consulta il file README dell'importatore.
Passaggi successivi
- Crea e gestisci dashboard personalizzate
- Esegui la migrazione delle regole di avviso e dei receiver da Prometheus
- Visualizza e gestisci l'utilizzo delle metriche