Instrumentação

Como o OpenTelemetry facilita a instrumentação

Para que um sistema seja observável, ele deve ser instrumentado: ou seja, o código dos componentes do sistema deve emitir rastros, métricas e logs.

Com o OpenTelemetry, você pode instrumentar seu código de duas maneiras:

  1. Soluções manuais por meio das APIs e SDKs oficiais para a maioria das linguagens
  2. Soluções sem código

As soluções manuais permitem obter uma visão mais aprofundada e telemetria rica diretamente da sua aplicação. Possibilitando o uso da API OpenTelemetry para gerar telemetria a partir da sua aplicação, atuando como um complemento essencial para telemetria gerada pelas soluções sem código.

As soluções sem código são ótimas para começar ou quando você não pode modificar a aplicação da qual precisa extrair telemetria. Provendo telemetria rica das bibliotecas que você utiliza e/ou do ambiente em que sua aplicação está sendo executada. Outra forma de pensar nisso é que elas oferecem informações sobre o que está acontecendo nas bordas da sua aplicação.

Você pode utilizar ambas as soluções simultaneamente.

Benefícios adicionais do OpenTelemetry

O OpenTelemetry oferece mais do que apenas soluções de telemetria manuais e sem código. Os seguintes recursos também fazem parte do OpenTelemetry:

  • Bibliotecas podem utilizar a API OpenTelemetry como dependência, sem impactar as aplicações que usam essa biblioteca, a menos que o SDK do OpenTelemetry seja importado.
  • Para cada sinal (rastros, métricas, logs), você tem à disposição diversos métodos para criá-los, processá-los e exportá-los.
  • Com a propagação de contexto integrada nas implementações, você pode correlacionar sinais, independentemente de onde eles são gerados.
  • Recursos e Escopo de instrumentação permitem agrupar sinais por diferentes entidades, como host, sistema operacional ou cluster K8s.
  • Cada implementação específica de linguagem da API e SDK segue os requisitos e expectativas da especificação OpenTelemetry.
  • As Convenções Semânticas fornecem um esquema de nomenclatura comum que pode ser usado para padronização em diferentes bases de código e plataformas.

Zero-code

Learn how to add observability to an application without the need to write code

Manual

Aprenda as etapas essenciais na configuração da instrumentação manual

Bibliotecas

Aprenda como adicionar instrumentação nativa à sua biblioteca.