· Tutoriais · 3 min read
O que é Observabilidade e por que sua empresa precisa (com Prometheus e Grafana)
Entenda o que é observabilidade na prática, como implementar monitoramento real com Prometheus e Grafana, e por que métricas importam mais que intuição.
Observabilidade virou palavra da moda no mercado de tecnologia. Mas na prática, o que significa? E como implementar de verdade sem cair no armadilha de só instalar ferramentas e achar que o trabalho acabou?
Monitoramento ≠ Observabilidade
- Monitoramento: você sabe o que esperar e cria alertas para isso (ex: CPU > 80%)
- Observabilidade: você consegue descobrir problemas que não sabia que existiam
Monitoramento responde “o que está quebrado?”. Observabilidade responde “por que está quebrado?”.
Os três pilares
- Métricas - valores numéricos ao longo do tempo (latência, taxa de erro, throughput)
- Logs - eventos discretos com contexto
- Tracing - rastreamento de requisições entre serviços
Para times pequenos e médios, métricas bem estruturadas resolvem 80% dos problemas.
Prometheus na prática
Prometheus coleta métricas dos seus serviços via HTTP. Cada serviço expõe um endpoint /metrics com dados estruturados.
Instalação rápida
# prometheus.yml
global:
scrape_interval: 15s
scrape_configs:
- job_name: 'node'
static_configs:
- targets: ['localhost:9100']
docker run -d \
-p 9090:9090 \
-v $(pwd)/prometheus.yml:/etc/prometheus/prometheus.yml \
prom/prometheus
Exporters essenciais
| Exporter | O que monitora | Porta |
|---|---|---|
| node_exporter | Servidor (CPU, RAM, disco) | 9100 |
| cAdvisor | Containers Docker | 8080 |
| blackbox_exporter | HTTP/HTTPS endpoints | 9115 |
| postgres_exporter | PostgreSQL | 9187 |
Métricas que importam
USE Method (Brendan Gregg):
- Utilization - % de uso do recurso
- Saturation - fila de espera do recurso
- Errors - taxa de erro do recurso
RED Method (Tom Wilkie) - para serviços:
- Rate - requisições por segundo
- Errors - taxa de erro
- Duration - latência (p50, p95, p99)
Grafana: dashboards que contam histórias
Com Prometheus coletando dados, Grafana transforma números em dashboards.
docker run -d -p 3000:3000 grafana/grafana
Adicione o Prometheus como data source e crie dashboards.
Métricas essenciais em um dashboard
- Uptime do serviço - está no ar?
- Latência p95/p99 - experiência real do usuário
- Taxa de erro - quantas requisições falham?
- Throughput - quantas requisições por segundo?
- Saturação de recursos - CPU, memória, disco, rede
Alertas inteligentes
Alertar por tudo é o mesmo que não alertar por nada.
# Regra de alerta
groups:
- name: critical
rules:
- alert: HighErrorRate
expr: rate(http_requests_total{status=~"5.."}[5m]) > 0.05
for: 5m
labels:
severity: critical
annotations:
summary: "Taxa de erro acima de 5% nos últimos 5 minutos"
Implementação passo a passo
Serviço → /metrics (Prometheus client) → Prometheus (scrape) → Grafana (dashboard)
↓
Alertmanager → Slack / Email
- Instrumente seu serviço com uma biblioteca Prometheus client
- Exponha métricas em
/metrics - Configure Prometheus para coletar
- Crie dashboards no Grafana
- Configure Alertmanager para notificações
Conclusão
Observabilidade não é sobre ferramentas - é sobre cultura. Ter métricas, logs e tracing não adianta se ninguém olha para os dashboards ou age sobre os alertas.
Comece pequeno: exponha métricas do seu serviço principal, crie um dashboard com latency/error/throughput, configure um alerta para erro 5xx. Depois expanda.
Quer ver na prática como configurar um ambiente completo de observabilidade com Prometheus e Grafana?
🚀 Garantir acesso ao DevOps na Prática → R$67