ANÚNCIO

~/questoes/devops

O que é OTLP e qual é sua importância no OpenTelemetry?

Responda, confira o feedback e use o resultado para orientar sua revisão.
Aula de referência Primeiros passos com OpenTelemetry: O que você precisa saber?
Para fixar

OTLP: O Protocolo que Conecta OpenTelemetry

Conceito central

OTLP (OpenTelemetry Protocol) é um protocolo padronizado que funciona como um intermediário universal, permitindo que aplicações instrumentadas comuniquem seus dados de observabilidade (traces, métricas e logs) com o Collector e outros componentes, independentemente da linguagem ou plataforma usada.

Por que essa resposta faz sentido

A alternativa D está correta porque OTLP é fundamentalmente um protocolo de comunicação padronizado. Ele define como os dados de observabilidade trafegam entre a aplicação e o Collector, garantindo compatibilidade entre diferentes tecnologias e evitando lock-in de vendor.

Armadilhas comuns

  • Confundir OTLP com um backend de observabilidade (como Jaeger). OTLP é o protocolo de transporte; Jaeger é um destino que recebe dados via OTLP.
  • Pensar que OTLP é uma SDK ou agente de instrumentação. Na verdade, SDKs e agentes coletam dados e os enviam através do OTLP.
  • Acreditar que OTLP é específico de uma linguagem. O protocolo é agnóstico—funciona com Python, Java, Go, Node.js e outras linguagens sem diferenças fundamentais.

Entenda as alternativas

A

Um backend de observabilidade (como Jaeger, Prometheus ou Datadog) armazena e visualiza dados, mas não é o OTLP. O OTLP é o protocolo que envia dados para esses backends, não o backend em si.

B

Agentes JVM que injetam instrumentação automática em aplicações Java legadas existem no OpenTelemetry, mas não são o OTLP. Esses agentes coletam dados usando o SDK e depois os enviam via OTLP para o Collector.

C

OpenTelemetry oferece SDKs para Python com suporte tanto a instrumentação manual quanto automática. Além disso, OTLP não é específico de nenhuma linguagem—funciona com todas elas de forma agnóstica.

D

OTLP é exatamente um protocolo padronizado que permite transmissão segura e estruturada de dados de observabilidade entre componentes do OpenTelemetry, funcionando independentemente da linguagem de programação ou infraestrutura.

Dica prática: Ao configurar o Collector do OpenTelemetry, você verá em receivers uma entrada OTLP (geralmente porta 4317 para gRPC). Isso significa que qualquer aplicação instrumentada que envia dados para esse endereço estará usando OTLP. É o 'idioma comum' entre sua app e o resto da infraestrutura de observabilidade.

Revise pensando: Se você instrumentasse uma aplicação em Python e outra em Java, ambas conseguiriam enviar dados para o mesmo Collector? Por quê?