Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[pt] Add pt/content/docs/concepts/instrumentation #5098

Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
60 changes: 60 additions & 0 deletions content/pt/docs/concepts/instrumentation/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
---
title: Instrumentação
description: Como o OpenTelemetry facilita a instrumentação
aliases: [instrumentation]
weight: 15
default_lang_commit: 13c2d415e935fac3014344e67c6c61556779fd6f
---

Para tornar um sistema observável, ele deve ser **instrumentado**: Ou seja, o
código dos componentes do sistema devem emitir
[rastros](/docs/concepts/signals/traces/),
[métricas](/docs/concepts/signals/metrics/), e
[logs](/docs/concepts/signals/logs/).

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

1. [Soluções baseadas em código](/docs/concepts/instrumentation/code-based)
através das
[APIs e SDKs oficiais para a maioria das linguagens](/docs/languages/)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seria bom especificar que tipo de linguagem: linguagens de programação.

2. [Soluções autoinstrumentadas](/docs/concepts/instrumentation/zero-code/)

Check warning on line 21 in content/pt/docs/concepts/instrumentation/_index.md

View workflow job for this annotation

GitHub Actions / SPELLING check

Unknown word (autoinstrumentadas)

Soluções **baseadas em código** permitem obter uma visão mais profunda e rica da
telemetria da própria aplicação. Elas permitem que você use a API do
OpenTelemetry para gerar telemetria a partir da sua aplicação, o que atua como
um complemento essencial para a telemetria gerada por soluções
autoinstrumentadas.

Check warning on line 27 in content/pt/docs/concepts/instrumentation/_index.md

View workflow job for this annotation

GitHub Actions / SPELLING check

Unknown word (autoinstrumentadas)

Soluções **autoinstrumentadas** são ótimas para começar ou quando você não pode

Check warning on line 29 in content/pt/docs/concepts/instrumentation/_index.md

View workflow job for this annotation

GitHub Actions / SPELLING check

Unknown word (autoinstrumentadas)
modificar a aplicação da qual você precisa obter telemetria. Elas fornecem uma
rica telemetria a partir das bibliotecas que você usa e/ou do ambiente no qual
sua aplicação é executada. Outra forma de pensar é que elas fornecem informações
sobre o que está acontecendo _nas bordas_ da sua aplicação.

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

## Benefícios adicionais do OpenTelemetry

O OpenTelemetry oferece mais do que apenas soluções de telemetria
autoinstrumentadas e baseadas em código. Também fazem parte do OpenTelemetry:

Check warning on line 40 in content/pt/docs/concepts/instrumentation/_index.md

View workflow job for this annotation

GitHub Actions / SPELLING check

Unknown word (autoinstrumentadas)

- As bibliotecas podem aproveitar a API do OpenTelemetry como uma dependência, o
que não terá impacto nas aplicações que usam essa biblioteca, a menos que o
SDK do OpenTelemetry seja importado.
- Para cada [sinal](/docs/concepts/signals) (rastros, métricas, logs), você tem
vários métodos à sua disposição para criar, processar e exportá-los.
- Com a [propagação de contexto](/docs/concepts/context-propagation) incorporada
nas implementações, você pode correlacionar sinais independentemente de onde
eles são gerados.
- [Recursos](/docs/concepts/resources) e
marcelobaptista marked this conversation as resolved.
Show resolved Hide resolved
[Escopos de Instrumentação](/docs/concepts/instrumentation-scope) permitem
agrupar sinais por diferentes entidades, como o
[host](/docs/specs/semconv/resource/host/),
[sistema operacional](/docs/specs/semconv/resource/os/) ou
[cluster K8s](/docs/specs/semconv/resource/k8s/#cluster).
- Cada implementação específica de linguagem da API e SDK seguem os requisitos e
expectativas da [especificação do OpenTelemetry](/docs/specs/otel/).
- As [Convenções Semânticas](/docs/concepts/semantic-conventions) fornecem um
esquema de nomenclatura comum que pode ser usado para padronização em bases de
código e plataformas.
71 changes: 71 additions & 0 deletions content/pt/docs/concepts/instrumentation/code-based.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
---
title: Instrumentação baseada em Código
description:
Aprenda o essencial para configurar a instrumentação baseada em código
weight: 20
aliases: [manual]
cSpell:ignore: proxying
default_lang_commit: 13c2d415e935fac3014344e67c6c61556779fd6f
---

## Importe a API e SDK do OpenTelemetry

Primeiro, você precisará importar o OpenTelemetry para o código do seu serviço.
Se você estiver desenvolvendo uma biblioteca ou algum outro componente que será
consumido por um binário executável, então você só precisará depender da API. Se
o seu artefato for um processo ou serviço independente, então você precisará
depender tanto da API quanto do SDK. Para saber mais informações sobre a API e
SDK do OpenTelemetry, consulte a [especificação](/docs/specs/otel/).

## Configure a API do OpenTelemetry

Para criar rastros ou métricas, você precisará primeiro criar um rastreador e/ou
um provedor de métricas. Em geral, recomendamos que o SDK forneça um provedor
padrão único para esses objetos. Em seguida, você obterá uma instância de
rastreador ou medidor desse provedor e dará a ele um nome e uma versão. O nome
que você escolher aqui deve identificar exatamente o que está sendo
instrumentado - se você estiver escrevendo uma biblioteca, por exemplo, então
você deve nomeá-la com o nome da sua biblioteca (por exemplo,
`com.example.myLibrary`), pois esse nome irá agrupar todos os spans ou eventos
de métricas produzidos. Também é recomendado que você forneça uma string de
versão (por exemplo, `semver:1.0.0`) que corresponda à versão atual da sua
biblioteca ou serviço.

## Configure o SDK do OpenTelemetry

Se você estiver desenvolvendo um processo de serviço, também precisará
configurar o SDK com as opções apropriadas para exportar seus dados de
telemetria para algum backend de análise. Recomendamos que essa configuração
seja feita programaticamente por meio de um arquivo de configuração ou algum
outro mecanismo. Também existem opções de ajuste específicas de cada linguagem
das quais você pode se beneficiar.

## Crie Dados de Telemetria

Depois de configurar a API e o SDK, você poderá criar rastros e eventos de
métricas por meio dos objetos rastreador e medidor que você obteve do provedor.
Utilize Bibliotecas de Instrumentação para suas dependências - confira o
[registro](/ecosystem/registry/) ou o repositório da linguagem escolhida para
ter mais informações sobre elas.

## Exporte os Dados

Depois de criar os dados de telemetria, você vai querer enviá-los para algum
lugar. O OpenTelemetry suporta dois métodos principais de exportação de dados do
seu processo para um backend de análise, seja diretamente de um processo ou por
meio do [OpenTelemetry Collector](/docs/collector).

A exportação in-process requer que você importe e dependa de um ou mais
_exporters_, bibliotecas que traduzem os objetos de trecho e métrica em memória
do OpenTelemetry para o formato apropriado para ferramentas de análise de
telemetria como Jaeger ou Prometheus. Além disso, o OpenTelemetry suporta um
protocolo de comunicação conhecido como `OTLP`, que é suportado por todos os
SDKs do OpenTelemetry. Esse protocolo pode ser usado para enviar dados para o
OpenTelemetry Collector, um processo binário independente que pode ser executado
como um proxy ou sidecar para suas instâncias de serviço ou em um host separado.
O Collector pode então ser configurado para encaminhar e exportar esses dados
para as suas ferramentas de análise preferidas.

Além de ferramentas de código aberto como Jaeger ou Prometheus, uma lista
crescente de empresas suporta a ingestão de dados de telemetria do
OpenTelemetry. Para mais detalhes, consulte [Fornecedores](/ecosystem/vendors/).
Loading
Loading