Por que você precisa de Observabilidade?
Profile picture

Junior Alves

Senior Developer

Foto: Unsplash

13 de junho de 20254 minutos de leitura

Por que você precisa de Observabilidade?

Eu achava que Logs eram suficientes. O bug em produção me provou o contrário.

Introdução

Sexta-feira 13, 2 da manhã. O celular vibra na cabeceira. São 5 chamadas perdidas do seu gestor. O sistema caiu.
Você entra e o dashboard de métricas está vermelho: a taxa de falha no checkout de pagamento disparou.
Você vai direto para os logs. Lá está: [ERROR] Erro ao processar o pagamento. E só. Nenhum detalhe, nenhum contexto. O que você faz agora? Parece cena de filme de terror né?

É raro, mas acontece com frequência...

Espero que você não tenha passado por isso, pelo menos não às 2 da manhã.
Você pode ter colocado o código em um bloco try..cach, logar o erro, ter monitoramento. Mas na hora da crise, seus logs podem ser apenas um beco sem saída.

O problema

O problema não é a falta de monitoramento. O monitoramento pode cumprir seu papel: avisar que algo estava errado. Emitir o alarme. O gráfico ficar vermelho.
O problema é que o monitoramento tradicional responde a perguntas que você já sabe fazer: "A CPU está alta?", "A latência aumentou?", "Quantos erros aconteceram?".

Fazendo as perguntas certas...

Mas quais as perguntas você precisa fazer nesses momentos?

  • Essa falha está acontecendo para todos os usuários ou para um grupo específico?
  • É com um tipo de cartão de crédito? Visa? Mastercard?
  • A falha acontece em um produto específico?
  • O serviço antifraude respondeu a tempo?
  • Qual era o userId e o cardId para que eu possa tentar reproduzir o erro?

Seu sistema pode ser uma caixa-preta. Você pode saber que existe um incêndio, mas não saber onde ele começou.

A solução

É aqui que o monitoramento evolui (como um Digimon mesmo kkk) para a Obervabilidade!
Pense assim:

  • Monitoramento é como o segurança de um shopping que te avisa que um alarme disparou (o "quê")
  • Observabilidade é como o detetive (pense no Sherlock Holmes 🕵️‍♂️) que chega na cena do crime e, usando pistas disponíveis (digitais, pegadas, câmeras), consegue reconstruir toda a história para descobrir o "porquê".

Em termos técnicos, Observabilidade é a capacidade de fazer perguntas arbitrárias sobre o seu sistema a partir do exterior, sem precisar adicionar novo código para respondê-las.

Os 3 pilares da Observabilidade

Logs (As anotações do detetive)

Logs são a base de tudo. Mas não o [ERROR] genérico que você coloca no catch do seu código.
Pense em logs como eventos ricos e estruturados. Em vez de uma frase, um objeto JSON.

// ANTES (Log inútil)
console.log('[ERROR] Erro ao processar pagamento.');
 
// DEPOIS (Log com Observabilidade)
console.log(JSON.stringify({
  level: 'ERROR',
  message: 'Falha na comunicação com o gateway de pagamento',
  userId: 'usr_12345',
  cartId: 'cart_abcde',
  paymentGateway: 'super-pagamentos',
  errorCode: '503-gateway-timeout'
}));

Métricas (A estatística do crime)

Métricas são dados agregados. O detetive não olha só um caso, ele quer saber: "Quantos roubos ocorreram neste bairro no último mês?".
Métricas respondem a "Qual a porcentagem de pagamentos falhando agora?" ou "Qual o tempo médio de resposta da API?". São ótimas para dashboards e alertas.

Imagem de um dashboard no Grafana

Traces (A reconstituição do crime)

Imagem do Connor do Detroit Became Human

Essa é a joia da coroa. Um trace segue uma única requisição através de todos os microserviços do seu sistema.
O detetive consegue ver o caminho completo do suspeito: "Ele entrou pela porta da frente, passou pelo corredor, tentou abrir o cofre e saiu pela janela" (se você já jogou Detroit: Became Human, lembre do Connor).

Requisição do Usuário -> [Serviço de Frontend: 25ms] -> [Serviço de Carrinho: 50ms] -> [Serviço de Pagamento: 3000ms - FALHA]

Pratique para fixar 🎉

Baseado na diferença fundamental discutida no artigo, qual afirmação melhor descreve a principal distinção entre Monitoramento e Observabilidade?

1 / 5

Conclusão

Ao adotar uma cultura de Observabilidade, você transforma seu sistema de uma "caixa-preta" em um "livro aberto".
Seus alertas agora vêm com um link direto para o trace da falha, permitindo que você entenda o "porquê" em minutos, não em horas de desespero.

Monitoramento te diz se seu sistema está funcionando. Observabilidade te ajuda a entender por que ele não esta funcionando, especialmente quando falhas inesperadas acontecem.

E você, já passou por uma situação onde um log genérico te deixou na mão? Deixe aqui nos comentários.

Obrigado por ler até aqui, grande abraço e até o próximo post!

Curtiu? Compartilhe esse post:

Todos os direitos reseverdos © Junior Alves 2025