No artigo anterior desta série, subimos um Prometheus local e fizemos as primeiras consultas em PromQL direto na interface web dele. Funciona, mas não é exatamente o que você quer mostrar numa reunião ou deixar aberto num monitor da equipe. É aqui que entra o Grafana: a ferramenta que transforma séries temporais em painéis visuais, alertas e histórico navegável.
1. Por Que Grafana e Não Só o Prometheus?
O Prometheus tem uma interface web própria, mas ela é pensada para debug e exploração rápida de métricas — não para visualização contínua. O Grafana resolve esse problema com:
- Painéis (panels) configuráveis: gráficos de série temporal, gauges, tabelas, heatmaps, contadores.
- Suporte a múltiplas fontes de dados ao mesmo tempo (Prometheus, Loki, PostgreSQL, CloudWatch, etc.), permitindo correlacionar métricas de origens diferentes num único dashboard.
- Sistema de variáveis para dashboards reutilizáveis (ex: trocar o ambiente ou a instância sem editar o painel).
- Alerta nativo (Grafana Alerting), que pode complementar ou até substituir o Alertmanager em alguns cenários.
2. Subindo o Grafana
Assim como fizemos com o Prometheus, o caminho mais rápido para testar é via Docker:
docker run \
--detach \
--name grafana \
--publish 3000:3000 \
grafana/grafana-oss:latestAcesse http://localhost:3000. O login padrão é admin / admin — o Grafana vai pedir para trocar a senha no primeiro acesso.
Dica: se o Prometheus também estiver rodando em container (como no artigo anterior), coloque os dois na mesma rede Docker (
docker network create monitoringe--network monitoringem ambos) para que o Grafana consiga resolver o hostnameprometheusem vez de depender do IP da máquina host.
3. Configurando o Data Source do Prometheus
Com o Grafana no ar:
- Vá em Connections > Data sources > Add data source.
- Selecione Prometheus.
- Em Connection > Prometheus server URL, informe o endereço do seu Prometheus (ex:
http://prometheus:9090se estiverem na mesma rede Docker, ouhttp://host.docker.internal:9090no Docker Desktop). - Clique em Save & test. Uma mensagem confirmando “Successfully queried the Prometheus API” indica que a conexão está funcionando.
A partir daqui, qualquer dashboard criado no Grafana pode consultar esse data source usando PromQL — exatamente as mesmas consultas que vimos no artigo anterior.
4. Criando o Primeiro Dashboard
Vá em Dashboards > New > New Dashboard > Add visualization e escolha o data source do Prometheus.
Painel 1: Status dos alvos (Stat)
Na query, use:
upTroque o tipo de visualização de Time series para Stat. Em Panel options > Value mappings, mapeie 0 para “DOWN” (cor vermelha) e 1 para “UP” (cor verde). Isso dá um indicador rápido de saúde dos alvos monitorados.
Painel 2: Uso de CPU ao longo do tempo (Time series)
rate(process_cpu_seconds_total{job="prometheus"}[5m])Mantenha a visualização como Time series — é o tipo ideal para acompanhar tendências e picos ao longo do tempo.
Painel 3: Total de séries armazenadas (Gauge)
prometheus_tsdb_head_seriesEscolha Gauge e defina um valor máximo razoável em Panel options > Standard options > Max, para visualizar o quão perto do limite esperado o Prometheus está.
Depois de adicionar os painéis, clique em Save dashboard, dê um nome (ex: “Prometheus — Visão Geral”) e salve numa pasta (folder) dedicada, em vez de deixar solto na raiz.
5. Boas Práticas Iniciais de Organização
Antes de sair criando dezenas de dashboards, vale adotar algumas convenções desde o início:
- Pastas por domínio ou time:
infra/,aplicacao/,banco-de-dados/, em vez de uma lista plana difícil de navegar. - Nomenclatura consistente: prefixe com o sistema monitorado, ex: “API — Latência” em vez de só “Latência”.
- Um dashboard, um propósito: é tentador colocar tudo num painel só; dashboards focados são mais fáceis de manter e de interpretar sob pressão (durante um incidente, ninguém quer garimpar 40 painéis).
- Tags nos dashboards: o Grafana permite marcar dashboards com tags (ex:
prometheus,producao), o que ajuda muito na busca conforme a quantidade cresce.
6. Conclusão
Com o data source configurado e o primeiro dashboard no ar, o Prometheus deixou de ser só uma fonte de números numa interface de debug e virou parte de um painel de observabilidade de verdade. No próximo artigo da série, vamos voltar ao Prometheus para configurar exporters, regras de alerta e o Alertmanager — a parte que avisa você antes que o usuário perceba o problema.