Instrumentação

Como o OpenTelemetry facilita a instrumentação

The content of this page may be outdated and some links may be invalid. A newer version of this page exists in English.

More information ...

To see the changes to the English page since this page was last updated: visit GitHub compare 82bd738d..efeda2d8 and search for content/en/docs/concepts/instrumentation/_index.md.

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.

Sem código

Aprenda como adicionar observabilidade a uma aplicação sem precisar escrever código

Manual

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

Bibliotecas

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