Este documento descreve como importar arquivos de painel no formato JSON do Grafana para o Cloud Monitoring. É possível importar painéis do Grafana das seguintes maneiras:
O processo de importação converte arquivos de painel no formato JSON usado pelo Grafana no formato JSON usado pelo Cloud Monitoring. Um painel convertido pode ser diferente do painel original do Grafana. Se, por exemplo, um Grafana usa recursos que não estão disponíveis nos painéis do Cloud Monitoring. esses aspectos do painel do Grafana não serão convertidos. Essas diferenças são listadas nos resultados da importação.
Só é possível importar painéis que usam expressões do PromQL e fontes de dados do Prometheus. Os painéis que usam outras formas de consulta ou fontes de dados podem não ser importados.
Para informações sobre como importar alertas do Prometheus para o Cloud Monitoring, consulte Migre regras e receptores de alertas do Prometheus.
Para informações gerais sobre como gerenciar seus painéis importados, consulte Criar e gerenciar painéis personalizados.
Antes de começar
Se você usa o console do Google Cloud ou a ferramenta de importação para importar os seus painéis, precisa ter autorização suficiente e painéis para importar. Ao usar a ferramenta de importação, há pré-requisitos adicionais.
Autorização
Para receber as permissões necessárias para criar e modificar painéis personalizados,
peça ao administrador para conceder a você o
Papel do IAM de editor do Monitoring (roles/monitoring.editor
) no seu projeto.
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Também é possível conseguir as permissões necessárias por meio de papéis personalizados ou de outros papéis predefinidos.
Para mais informações sobre papéis, consulte Controlar o acesso com o Identity and Access Management.
Coletar os painéis do Grafana para importar
Para importar painéis do Grafana, eles precisam ser armazenados localmente no formato JSON. Você pode criar um diretório especificamente para esses arquivos do dashboard.
Importar painéis usando o console do Google Cloud
É possível importar os painéis do Grafana para o Cloud Monitoring seguintes locais no console do Google Cloud:
- Guia Lista de painéis nos Painéis do Monitoring página.
- Seção do painel da lista de verificação de integração na página Visão geral do Monitoring.
Importar painéis do Grafana
Para importar um ou mais painéis do Grafana, faça o seguinte:
Acesse a página Painéis ou a Visão geral na Monitoramento:
-
No console do Google Cloud, acesse a página Painéis:
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Monitoramento.
-
No console do Google Cloud, acesse a página Visão geral do Monitoring:
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Monitoramento.
-
Clique em save_alt Import Grafana Dashboards.
Clique em Procurar para acessar o diretório em que você armazenou os painéis do Grafana no formato JSON e selecione aqueles que você quer importação.
Cada arquivo JSON é preparado depois de selecionado. os arquivos preparados indica se há problemas na conversão.
- Clique em code Ver JSON convertido para conferir os resultados da conversão.
- Clique em close Remover arquivo para remover um painel da operação de importação.
Clique em save_alt Importar. O painel Importar resultados indica se os resultados nem todos os painéis foram importados.
Para acessar um painel importado, clique em open_in_new Visualizar.
Conferir os painéis importados
Para conferir os painéis importados, faça o seguinte:
-
No console do Google Cloud, acesse a página Painéis:
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Monitoramento.
Localize o painel que você quer visualizar na lista. Para filtrar a lista de painéis, faça o seguinte:
- Selecione a categoria Personalizado para ver apenas os painéis definidos pelo usuário.
- Selecione o rótulo
cloud-monitoring-dashboard-importer
para ver apenas os painéis do Grafana importados usando o console do Google Cloud. - Use a barra de filtro para pesquisar por nome.
Importar painéis usando a ferramenta de importação
Use a ferramenta de importação para converter os painéis do Grafana e fazer upload deles para o Cloud Monitoring como uma única operação. Também é possível executar as etapas de conversão e upload separadamente. Escolha essa abordagem se quiser editar os painéis convertidos antes de fazer o upload deles.
Pré-requisitos adicionais
Antes de instalar e executar o importador de painel, faça o seguinte:
- Use um ambiente compatível com scripts de shell Bash.
- Tenha ou instale o Git.
- Ter ou instalar o Node.js, versão 20.4.1 ou mais recente.
- Ter ou instalar a CLI do Google Cloud. Se você já tiver
a CLI gcloud instalada, verifique se tem a versão
mais recente executando o comando
gcloud components update
.
Conseguir o importador do dashboard
O importador do painel é armazenado no repositório
monitoring-dashboard-samples
do GitHub.
Para conseguir o importador, faça o seguinte:
Clone o repositório:
git clone https://github.com/GoogleCloudPlatform/monitoring-dashboard-samples
Mude para o diretório do importador do dashboard:
cd monitoring-dashboard-samples/scripts/dashboard-importer
O importador do painel inclui os seguintes scripts:
import.sh
, que converte painéis e, opcionalmente, faz o upload dos painéis convertidos para o Cloud Monitoring.upload.sh
, que faz upload dos painéis convertidos (ou de qualquer painel do Monitoring) para o Cloud Monitoring. O scriptimport.sh
o chama para fazer o upload.
Ao usar o script import.sh
, especifique o
local dos painéis do Grafana que serão convertidos. O importador cria um diretório que contém os painéis convertidos e outras informações.
As seções a seguir descrevem esses diretórios.
Painéis do Grafana para conversão
É possível usar o importador de painel para converter um ou mais painéis de uma vez especificando um caminho para os arquivos dos painéis.
É possível especificar o caminho para um diretório que contém dashboards. Somente arquivos no diretório que têm a extensão
.json
são processados.Você pode especificar o caminho para um único arquivo JSON. O nome do arquivo precisa ter a extensão
.json
.
Painéis convertidos e outras informações
Quando o importador é executado pela primeira vez, ele cria um subdiretório reports
.
Sempre que você executar o importador, receberá um novo diretório de saída no diretório
reports
, nomeado pela data e hora. O nome do diretório de saída tem a seguinte estrutura:
reports/YYYY-M-D/HH:MM:SS
Para cada invocação do importador, o diretório de saída contém o seguinte:
- Um arquivo ou arquivos com os mesmos nomes dos painéis originais do Grafana, mas agora no formato JSON do Cloud Monitoring.
- Um arquivo
report.json
, que registra as seguintes informações para cada painel convertido:- O nome e o local do arquivo do painel do Grafana que foi convertido.
- O nome e o local do arquivo convertido do painel do Monitoring.
- Avisos sobre recursos no painel do Grafana que não têm recurso correspondente no Cloud Monitoring e, portanto, não podem ser incluídos no painel convertido.
- Todos os erros que ocorreram na conversão.
Se você fez upload dos painéis, o diretório de relatórios também incluirá
um arquivo upload_HH:MM:SS.txt
, que inclui o URL para o qual
o painel foi enviado.
Importar painéis do Grafana
Para converter os painéis do Grafana e fazer upload deles para o Cloud Monitoring, use
o script import.sh
:
./import.sh PATH_TO_DIRECTORY_OR_FILE PROJECT_ID
Esse script faz o seguinte:
- Converte painéis em
PATH_TO_DIRECTORY_OR_FILE
do formato JSON usado pelo Grafana no formato JSON usado pelo Cloud Monitoring. Faz upload dos painéis convertidos no seu projeto do Google Cloud PROJECT_ID usando a CLI do Google Cloud.
Se você não estiver autenticado na CLI gcloud, execute o comando
gcloud auth login
antes de executar o scriptimport.sh
.
É possível importar todos os painéis do Grafana em um diretório ou especificar um único painel nesse diretório.
Para importar todos os painéis do diretório
GRAFANA_DASHBOARDS_DIR
para o projeto PROJECT_ID do Google Cloud, especifique o diretório, em relação ao diretório do importador e o ID do projeto de destino ao invocar o script:./import.sh GRAFANA_DASHBOARDS_DIR PROJECT_ID
Para converter apenas o painel
MY_GRAFANA_DASHBOARD.json
no diretórioGRAFANA_DASHBOARDS_DIR
, inclua o nome do arquivo do painel, relativo ao diretório importador, ao invocar o script:./import.sh GRAFANA_DASHBOARDS_DIR/MY_GRAFANA_DASHBOARD.json PROJECT_ID
O importador de painel inclui um painel de amostra do Grafana como
examples/k8s_cluster_example.json
. O comando a seguir importa
esse painel para o projeto especificado:
./import.sh examples/k8s_cluster_example.json PROJECT_ID
Quando invocada com o PROJECT_ID my-project-test-1
, a saída é semelhante
a esta:
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
Depois que o script import.sh
cria o diretório de saída e converte os painéis, mas antes de fazer upload dos painéis convertidos para o projeto, ele solicita uma confirmação. Insira y
e o script faz upload do painel e imprime o URL do novo painel:
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
Converter painéis do Grafana sem fazer upload
Se você quiser inspecionar ou editar os painéis convertidos antes de fazer o upload deles, omita o valor PROJECT_ID ao invocar o script import.sh
:
./import.sh PATH_TO_DIRECTORY_OR_FILE
O importador converte os painéis conforme descrito em Importar painéis do Grafana, mas não faz upload dos painéis convertidos para o Cloud Monitoring.
É possível executar a etapa de upload mais tarde usando o script upload.sh
manualmente.
Fazer upload de painéis manualmente
Para fazer o upload manual dos painéis no formato JSON do Cloud Monitoring, use o script upload.sh
.
./upload.sh PATH_TO_DIRECTORY_OR_FILE PROJECT_ID
O script upload.sh
usa a CLI do Google Cloud
para fazer upload dos arquivos JSON. Se você não estiver autenticado na
CLI gcloud, execute o comando gcloud auth login
antes de executar o script upload.sh
.
Para fazer upload de todos os painéis em um diretório
reports/YYYY-M-D/HH:MM:SS
, especifique o diretório, relativo ao diretório do importador e o ID do projeto de destino ao invocar o script:./upload.sh
reports/YYYY-M-D/HH:MM:SS
PROJECT_IDAo fazer o upload de todos os painéis de um diretório, o script solicita que você continue ou saia antes de fazer o upload dos painéis.
Para fazer upload de um painel específico em um diretório
reports/YYYY-M-D/HH:MM:SS
, especifique o diretório e o nome do arquivo, em relação ao diretório do importador e o ID do projeto de destino ao invocar o script:./upload.sh
reports/YYYY-M-D/HH:MM:SS
/MY_MONITORING_DASHBOARD.json PROJECT_IDAo fazer o upload de um único painel de um diretório, o script é executado sem solicitar que você faça o upload dos painéis.
Por exemplo, o comando a seguir faz upload de um painel armazenado
em um subdiretório reports
para o projeto my-project-test-1
do Google Cloud:
./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
Visualizar seus painéis enviados
Para visualizar os painéis enviados, faça o seguinte:
-
No console do Google Cloud, acesse a página Painéis:
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Monitoramento.
Localize o painel que você quer visualizar na lista. Para filtrar a lista de painéis, faça o seguinte:
- Selecione a categoria Personalizado para ver apenas painéis definidos pelo usuário.
- Selecione o rótulo
cloud-ops-grafana-importer
para exibir apenas o Grafana painéis importados com a ferramenta importador. - Use a barra de filtro para pesquisar por nome.
Solução de problemas
De vez em quando, publicamos pequenas atualizações e correções de bugs para a ferramenta. Antes
de tentar solucionar outros problemas, primeiro tente corrigir o problema
usando git pull
para extrair a versão mais recente
do repositório e importar novamente.
Para informações sobre problemas com os painéis convertidos,
como gráficos que não mostram dados, consulte o arquivo
README
do importador.
A seguir
- Criar e gerenciar painéis personalizados
- Migrar regras de alerta e receptores do Prometheus
- Ver e gerenciar o uso de métricas