Dashboards

Princípios de design, métricas-chave, dashboards operacionais vs de negócio e como construir visões úteis.

Para que servem os dashboards?

Um dashboard é uma visão consolidada de métricas que permite entender o estado de um sistema num relance. Mas nem todos os dashboards são iguais — um dashboard mal projetado pode ser tão inútil quanto não ter nenhum.

O objetivo de um bom dashboard não é mostrar a maior quantidade de dados possível, mas responder a perguntas específicas de forma rápida e clara.

Princípios de design

1. Defina a audiência

Antes de criar um dashboard, pergunte-se: quem vai usá-lo e para quê?

  • Engenheiro on-call: Precisa saber rapidamente se há um problema e onde ele está.
  • Tech lead: Precisa entender tendências de desempenho e capacidade.
  • Product manager: Precisa de métricas de negócio e adoção.
  • Executivo: Precisa de indicadores de alto nível sobre saúde e crescimento.

Cada audiência precisa de um dashboard diferente.

2. Hierarquia visual

Organize a informação da mais importante para a menos importante, de cima para baixo e da esquerda para a direita:

  • Linha superior: Indicadores de estado geral (semáforos, números grandes).
  • Linhas intermediárias: Gráficos de tendência das métricas principais.
  • Linhas inferiores: Detalhe e métricas secundárias.

3. Menos é mais

Um dashboard com 30 painéis não é mais útil que um com 8 painéis bem escolhidos. Cada painel deve justificar sua presença respondendo a uma pergunta concreta.

Regra prática: se um painel não mudou a decisão de ninguém nos últimos 30 dias, provavelmente não precisa estar ali.

4. Contexto temporal

Sempre inclua:

  • Seletor de intervalo temporal: Permitir alternar entre últimas 6 horas, 24 horas, 7 dias.
  • Comparação temporal: Mostrar a mesma métrica de uma semana atrás para detectar anomalias.
  • Marcadores de deploys: Linhas verticais que indicam quando um deploy foi feito.

5. Cores com significado

Use cores de forma consistente e com propósito:

  • Verde: Tudo normal, dentro do SLO.
  • Amarelo/Laranja: Degradação, aproximando-se do limite.
  • Vermelho: Problema ativo, fora do SLO.

Evite usar muitas cores decorativas — elas distraem e diluem os sinais importantes.

Tipos de dashboards

Dashboard operacional

Projetado para a equipe de engenharia durante operações diárias e resposta a incidentes.

Conteúdo típico:

  • Métricas RED por serviço (rate, errors, duration).
  • Estado de dependências (bancos de dados, filas, serviços externos).
  • Recursos de infraestrutura (CPU, memória, disco).
  • Alertas ativos.
  • Deploys recentes.

Características:

  • Atualização em tempo real (refresh a cada 10-30 segundos).
  • Foco nas últimas horas.
  • Limites visíveis com cores de semáforo.

Dashboard de serviço

Um dashboard dedicado a um microsserviço específico. Cada equipe deveria ter um para cada serviço que mantém.

Conteúdo típico:

  • Métricas RED do serviço.
  • Latência por endpoint (p50, p95, p99).
  • Taxa de erros por tipo de erro.
  • Métricas de dependências downstream.
  • Uso de recursos (CPU, memória, conexões ao DB).
  • Fila de mensagens (se aplicável): tamanho, lag, throughput.

Dashboard de negócio

Projetado para stakeholders não técnicos que precisam entender o impacto no negócio.

Conteúdo típico:

  • Pedidos criados por hora/dia.
  • Receita processada.
  • Taxa de conversão do checkout.
  • Usuários ativos.
  • Tempo médio para completar uma operação-chave.

Características:

  • Atualização menos frequente (a cada 5-15 minutos).
  • Foco em tendências diárias/semanais.
  • Linguagem de negócio, não técnica.

Dashboard de SLO

Mostra o cumprimento dos Service Level Objectives da equipe.

Conteúdo típico:

  • SLO atual vs objetivo (ex: 99.92% vs 99.9%).
  • Error budget restante (em minutos ou porcentagem).
  • Tendência do error budget nos últimos 30 dias.
  • Incidentes que consumiram error budget.

Este dashboard é fundamental para tomar decisões sobre priorização: se o error budget está se esgotando, a equipe deveria priorizar estabilidade em vez de features.

Métricas-chave por tipo de componente

Para um API Gateway

  • Requests por segundo (total e por rota).
  • Latência por rota (p50, p95, p99).
  • Taxa de erros 4xx e 5xx.
  • Rate limiting ativado.
  • Conexões ativas.

Para um banco de dados

  • Queries por segundo.
  • Latência de queries (p50, p95, p99).
  • Conexões ativas vs pool máximo.
  • Replicação lag (se aplicável).
  • Uso de disco e crescimento.

Para uma fila de mensagens

  • Mensagens publicadas por segundo.
  • Mensagens consumidas por segundo.
  • Consumer lag (mensagens pendentes).
  • Tamanho da fila.
  • Erros de processamento (dead letter queue).

Para um serviço HTTP

  • Métricas RED (rate, errors, duration).
  • Distribuição de status codes.
  • Latência por endpoint.
  • Erros por tipo (timeout, 500, 503).
  • Saturação (requests na fila, threads ativas).

Antipadrões

Dashboard “wall of text”

Painéis pequenos demais com números que ninguém consegue ler. Priorize poucos painéis grandes e claros.

Dashboard “vanity metrics”

Métricas que ficam bonitas mas não são acionáveis: “total de requests desde o início dos tempos”. Mostre taxas e tendências, não acumulados.

Dashboard sem contexto

Gráficos sem limites, sem comparação temporal, sem indicação do que é “normal”. Sem contexto, um gráfico é apenas uma linha bonita.

Dashboard desatualizado

Um dashboard que não reflete a arquitetura atual é pior que não ter dashboard — gera falsa confiança. Mantenha os dashboards atualizados como parte do ciclo de desenvolvimento.

Um único dashboard para tudo

Tentar colocar métricas operacionais, de negócio e de infraestrutura num único dashboard. Cada audiência precisa de sua própria visão.

Ferramentas

Grafana

A ferramenta mais popular para dashboards de observabilidade:

  • Suporta múltiplos data sources (Prometheus, Elasticsearch, CloudWatch, etc.).
  • Templates e variáveis para dashboards dinâmicos.
  • Alertas integrados.
  • Comunidade ativa com dashboards compartilhados.

Datadog

Plataforma SaaS que integra métricas, logs, traces e dashboards:

  • Dashboards out-of-the-box para tecnologias populares.
  • Correlação automática entre sinais.
  • Notebooks para investigação de incidentes.

Kibana

Parte do stack ELK, especializado em visualização de logs:

  • Dashboards baseados em dados do Elasticsearch.
  • Ideal para análise de logs e busca.
  • Lens para criar visualizações sem código.

Boas práticas

Dashboard como código

Defina dashboards em código (JSON, Terraform, Jsonnet) e versione-os no Git:

  • Reprodutibilidade: você pode recriar dashboards em qualquer ambiente.
  • Revisão: mudanças em dashboards passam por code review.
  • Histórico: você sabe quem mudou o quê e quando.

Onboarding com dashboards

Quando um novo membro entra na equipe, os dashboards deveriam fazer parte do onboarding:

  • “Este é o dashboard principal do serviço X.”
  • “Estes são os indicadores que olhamos primeiro quando há um incidente.”
  • “Este é o dashboard de SLO da equipe.”

Iteração contínua

Os dashboards não são estáticos. Depois de cada incidente, pergunte-se:

  • O dashboard me ajudou a diagnosticar o problema?
  • Faltou alguma métrica que teria sido útil?
  • Havia painéis que não agregam valor?

Resumo

Os dashboards são a interface humana da observabilidade. Um bom dashboard responde a perguntas específicas para uma audiência definida, usa hierarquia visual para priorizar informação e se mantém atualizado com a arquitetura. Combinando dashboards operacionais, de serviço, de negócio e de SLO, a equipe tem visibilidade completa sobre a saúde do sistema a partir de múltiplas perspectivas.