Escrito por: Fernando Okuma
Por um grande período, times de desenvolvimento e times de operações viveram em mundos separados quando o assunto era o monitoramento de aplicações em produção. Pessoas desenvolvedoras ficavam focadas em entregar novas funcionalidades e corrigir bugs, enquanto o time de operações acompanhava painéis de controle e feedbacks das pessoas usuárias para entender se tudo estava funcionando como esperado. Nesse intervalo entre esses dois universos, surgia um grande ponto cego. Quando algum problema acontecia na produção, a pergunta era quase sempre a mesma: “onde está o problema?”. Código, banco de dados, infraestrutura ou outro serviço ou micro serviço? A resposta, na maioria das vezes, dependia de quem era perguntado.
A falta de visibilidade cria silos muito comuns, especialmente em empresas com vários times, em que cada um observa apenas o seu próprio recorte do todo. Logs de aplicação, métricas de infraestrutura, traces de APIs e alertas de monitoramento acabam sendo analisados de forma isolada, com cada time criando sua própria maneira de entender o que está acontecendo na produção. Quando surge a necessidade de investigar um problema que atravessa essas fronteiras, conectar os pontos se transforma em um exercício de adivinhação.
É nesse tipo de cenário que o OpenTelemetry muda o jogo ao estabelecer um padrão aberto e comum para a coleta de dados de observabilidade, como logs, métricas e traces. Isso permite que um mesmo evento seja observado com o mesmo contexto, seja por uma pessoa desenvolvedora realizando um debug local, seja pelo time de operações analisando um incidente em produção. Ao padronizar a forma de coletar, formatar e transmitir essas informações, todos passam a falar a mesma língua, fazendo com que o foco volte a ser a resolução do problema, e não a discussão sobre de quem é a responsabilidade.
Adotar OpenTelemetry vai além de uma decisão técnica e representa uma mudança cultural. Em soluções complexas, compostas por diversos sistemas menores interconectados, falar a mesma língua ao gerar dados de observabilidade permite que os times compartilhem informações e percepções, construam dashboards comuns e tomem decisões baseadas em fatos. Isso possibilita compreender não apenas o que está acontecendo dentro do escopo de responsabilidade de cada time, mas também o comportamento dos outros componentes com os quais seus serviços interagem. O resultado é um ciclo mais saudável, com menos retrabalho, menos ruído e mais aprendizado coletivo.
Apesar de parecer algo complexo, essa jornada não precisa começar de forma radical. É possível iniciar aos poucos, instrumentando um serviço crítico ou adicionando traces em pontos específicos de integração. Com o tempo, essa visibilidade passa a fazer parte natural do fluxo de desenvolvimento. À medida que os times percebem o valor de entender o que está acontecendo em produção, cresce a demanda por mais informações que ajudem a identificar comportamentos, picos de uso e anomalias. Esse movimento impulsiona naturalmente a criação de uma cultura de instrumentação contínua, enriquecimento dos dados coletados e melhoria na organização e formatação dessas informações.
No fim das contas, o OpenTelemetry não é apenas sobre visualizar o sistema, mas sobre compreendê-lo como um todo, incluindo partes que não estão sob a responsabilidade direta de desenvolvimento ou sustentação, mas que são essenciais para a entrega de valor. Essa visão fortalece a qualidade das soluções e promove uma cultura de colaboração entre times e pessoas.


