Skip to content

Commit

Permalink
fix: prettify
Browse files Browse the repository at this point in the history
  • Loading branch information
marcelobaptista committed Aug 24, 2024
1 parent 05fb8cb commit c576ebb
Show file tree
Hide file tree
Showing 4 changed files with 325 additions and 118 deletions.
53 changes: 39 additions & 14 deletions content/pt/docs/concepts/instrumentation/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,30 +6,55 @@ 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/),
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:
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
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/)
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.
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 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.
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:

- 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 [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.
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
[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.
55 changes: 47 additions & 8 deletions content/pt/docs/concepts/instrumentation/code-based.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
title: Instrumentação baseada em Código
description: Aprenda o essencial para configurar a 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
Expand All @@ -9,24 +10,62 @@ 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/).
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.
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.
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.
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).
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.
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/).
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

0 comments on commit c576ebb

Please sign in to comment.