Como Instalar e Usar Grafana para Visualizar Dados em Tempo Real

Grafana é uma ferramenta poderosa e auto-hospedada que transforma métricas complexas em painéis interativos e gráficos em tempo real. A melhor parte é que você pode instalar o Grafana em várias plataformas via Docker, o que torna a configuração rápida, limpa e independente de plataforma. Neste guia, vou te mostrar como instalar o Grafana usando Docker e como usá-lo para monitorar métricas do sistema e visualizar dados em tempo real de maneira eficaz.
Instalar Grafana Usando Docker
Antes de instalar o Grafana, certifique-se de que o Docker está instalado no seu sistema.
Para começar, siga o comando abaixo para baixar a imagem do Grafana:
sudo docker pull grafana/grafana
Agora inicie um novo contêiner do Grafana em segundo plano e mapeie-o para a porta 3000 usando o seguinte comando:
sudo docker run -d -p 3000:3000 --name=grafana grafana/grafanaApós iniciar o contêiner Docker, abra seu navegador e acesse http://localhost:3000 para acessar o painel do Grafana. Use o nome de usuário e a senha padrão, ambos definidos como admin, para entrar no Grafana:

Ao clicar no botão de login, ele pede para você atualizar a senha para evitar riscos de segurança. Você pode atualizar e enviar (recomendado) a senha modificada ou pular essa etapa para prosseguir com a senha padrão:

Uma vez que você tenha feito login com sucesso, o seguinte painel aparecerá:

Relacionado: além do Grafana, você pode usar qualquer uma dessas ferramentas para monitorar seu sistema Linux.
Conectando Fontes de Dados e Visualizando Métricas
O Grafana permite que você monitore vários serviços e contêineres a partir de um único painel. Você pode adicionar múltiplas fontes de dados (como Prometheus, MySQL, MongoDB, etc.) e visualizar dados usando painéis pré-construídos ou personalizados.
Vamos conectar o Prometheus como nossa primeira fonte de dados. Para isso, vamos instalar e executar o Prometheus usando Docker:
sudo docker pull prom/prometheus
Execute o contêiner Prometheus com o seguinte comando:
sudo docker run -d -p 9090:9090 --name=prometheus prom/prometheusUma vez que o contêiner estiver em execução, você pode acessar a interface web do Prometheus visitando http://your_ip:9090.
Adicionar uma Fonte de Dados
Agora que o Grafana e o Prometheus estão funcionando, você pode começar a adicionar sua primeira fonte de dados:

Selecione a fonte de dados que você deseja adicionar e, em seguida, insira a URL, como http://your_ip:9090. Após isso, clique em Salvar & Testar, e você será notificado com a seguinte mensagem: Consultado com sucesso a API do Prometheus

Criando Seu Primeiro Painel
Uma vez conectado, você pode criar um painel para visualizar suas métricas usando gráficos, tabelas e outros painéis. Para fazer isso, clique no botão Criar Painel ou Novo -> Novo painel.

Agora, clique no botão + Adicionar uma nova visualização para iniciar seu novo painel adicionando uma visualização:

Por fim, escolha o Prometheus como a fonte de dados:

Use qualquer métrica disponível, por exemplo, process_cpu_seconds_total, e clique no botão Executar Consultas para visualizar os dados:

Da mesma forma, você pode adicionar mais visualizações (como uso de CPU, memória, etc.) e arrastá-las para o seu layout.
Dessa forma, você pode construir uma visão interativa em tempo real dos dados do seu sistema ou aplicativo para um monitoramento e análise mais fáceis.
Usar Painéis Pré-construídos
O Grafana permite a importação de painéis da comunidade. Por exemplo, você pode visitar o site oficial do Grafana e usar qualquer painel pré-construído:

Para usar um painel pré-construído, você pode copiar o ID de qualquer painel do site oficial e colá-lo na seção do painel Grafana.
Agora que o Grafana está funcionando, o próximo passo é explorar visualizações avançadas, instalar plugins úteis ou integrá-lo com ferramentas como Prometheus, MySQL ou Elasticsearch para uma pilha completa de observabilidade. Você também pode explorar como executar outros aplicativos baseados em GUI no Docker para criar um ambiente mais interativo e flexível.