Monitoramento x Observabilidade

Olá amiguinhos, como vocês estão?

Já se passaram três semanas desde que comecei um novo desafio profissional na JYSK, uma empresa Dinamarquesa especializada em artigos para o lar.

Sede da JYSK na Dinamarca 🇩🇰

Essa nova posição difere um pouco das minhas outras experiências profissionais, pois dessa vez trabalharei diretamente com as aplicações Java que permitem a JYSK vender seus móvies e colchões ao redor do mundo. O fato de eu nunca ter trabalhado com programação (bash e PowerShell não contam) poderia ter sido um argumento eliminatório durante o meu processo seletivo, mas felizmente os meus pares no time entenderam que essas habilidades poderiam ser facilmente aprendidas e que minha experiência pregressa seria uma mais-valida interessante.

Essa aposta se deve ao fato de que internamente a JYSK possui uma série de times dedicados a várias competências relacionadas a infraestrutura. Por exemplo, eles possuem um time dedicado a contêineres e orquestração, um time dedicado a automações, e por aí vai. Atualmente, eu trabalho em um time cujo foco é a observabilidade dessas tais aplicações Java ☕

Quando contei as novidades para os meus amigos e expliquei quais seriam as minhas atribuições como funcionário dentro desse time, uma coisa me chamou a atenção: muitos deles não sabiam a diferença entre observabilidade e monitoramento. Eles sabiam que existia uma diferença entre os dois conceitos, mas acabavam por usá-los quase como sinônimos.

O que nos leva a essa postagem que voismecê está lendo nesse momento 🎩

Conceitos básicos

A AWS possui um documento muito interessante que versa sobre as diferenças entre esses dois conceitos:

O monitoramento é o processo de coletar dados e gerar relatórios sobre diferentes métricas que definem a integridade do sistema. A observabilidade é uma abordagem mais investigativa. Ele analisa atentamente as interações de componentes distribuídos do sistema e os dados coletados pelo monitoramento para encontrar a causa raiz dos problemas.

Eu gosto de pensar a diferença entre esses dois conceitos de uma maneira mais lúdica: a velha piada da casca de banana 🍌

Para quem não conhece essa clássica anedota que fariam Costinha e Ary Toledo morrerem de vergonha ao contá-la em um show, aqui vai:


Uma pessoa normal, sem nenhum esteriótipo cultural explícito estava andando na rua e pisa numa casca de banana.
Plófft! Leva o maior tombo.
Todo mundo corre para ajudá-lo a se levantar.
Ele continua andando e de repente, Plófft, outra casca de banana, outro tombo.
- O senhor precisa olhar onde pisa - adverte-lhe uma senhora.
Ele levanta-se e continua a sua caminhada, dessa vez sem tirar os olhos do chão.
De repente avista outra casca de banana.
- Ó raios! Lá vou eu cair de novo!


Eu sei, é de perder o fôlego de tanto rir 😒

Para entendermos essa analogia, precisamos inicialmente declarar algumas premissas:

  • A pessoa andando na calçada é o sistema.

  • A casca de banana à frente é um problema potencial (um bug, uma falha, uma degradação no desempenho).

  • O monitoramento é como ter um sensor no seu sapato que, ao pisar na casca, emite um alerta imediato:

    ALERTA: Escorregão detectado. Queda iminente!

    Ele coleta e reporta o dado claro e óbvio (a métrica do deslize). Ele te diz que algo está errado, mas não necessariamente porque a casca estava ali ou como evitar totalmente a queda.

  • A observabilidade é o seu cérebro e sentidos trabalhando juntos antes, durante e depois do evento. Ela usa os dados do sensor (monitoramento) mais a visão periférica, a memória de que essa calçada é mal cuidada, a percepção do clima (chão molhado?), e a análise rápida do tipo de casca. Ela permite que você responda a perguntas investigativas como:

    • De onde veio essa casca?

    • Há mais cascas adiante?

    • Foi um descuido pontual ou há um vendedor de frutas com problema no lixo na próxima esquina?

    A observabilidade ajuda a encontrar a causa raiz, não só o sintoma.

Quais são as semelhanças?

Mais uma vez, a AWS vem ao nosso encontro para nos ajudar 🌤️

Tanto a observabilidade quanto o monitoramento derivam originalmente do campo da teoria do controle, um campo matemático e de engenharia de sistemas. Ambos são usados extensivamente em ambientes físicos de computação e de computação combinada para manutenção da integridade e da performance do sistema. No DevOps, os termos geralmente são usados de forma intercambiável porque ambos estão relacionados a dados de telemetria, como métricas, eventos, logs e rastreamentos.

Métricas

As métricas são medidas de dados do sistema. Por exemplo, uma métrica pode ser o throughput da rede ou o número de erros de aplicações em uma semana. Os relatórios de monitoramento sobre métricas e observabilidade buscam maneiras de melhorar seus valores.

Eventos

Eventos são ações discretas que ocorrem em um sistema a qualquer momento. Um exemplo pode ser um usuário alterando uma senha ou um alerta indicando um grande número de tentativas de senha. Os eventos acionam o monitoramento e apoiam a observabilidade na investigação de incidentes.

Logs

Os logs são arquivos gerados por software que contêm informações sobre as operações, atividades e padrões de uso do sistema. Eles incluem um registro histórico de todos os processos, eventos e mensagens junto com dados descritivos adicionais, como carimbos de data/hora, para contextualizar essas informações. O monitoramento gera logs que a observabilidade usa para análises adicionais do sistema.

Rastreamentos (trace)

Os rastreamentos são o caminho completo de uma única operação em seus vários sistemas inter-relacionados. Para um rastreamento totalmente distribuído, os sinais devem ser emitidos de cada transação na arquitetura de microsserviços para rastreamento. O monitoramento permite o rastreamento, que é uma função importante da observabilidade.

Resumão das diferenças

Fonte: Observabilidade x monitoramento — Diferença entre processos baseados em dados — AWS

E por hoje é só, coleguinhas! Eu sei que andei sumido, mas prometo que irei priorizar o blog nesse ano de 2026. Então fiquem ligados nas postagens e, claro, compartilhe o conteúdo se você acha que ele pode ajudar alguém!

Um grande abraço 🫂

Previous
Previous

Meu plano de estudos para o 1° semestre

Next
Next

Sobre encerramentos