# Utilizando bibliotecas de instrumentação

LLMS index: [llms.txt](/llms.txt)

---


Ao desenvolver uma aplicação, é possível utilizar bibliotecas e _frameworks_ de
terceiros para acelerar seu trabalho. Caso você instrumente sua aplicação
utilizando OpenTelemetry, talvez queira evitar gastar tempo adicional para
adicionar manualmente rastros, logs e métricas às bibliotecas e _frameworks_ de
terceiros que utiliza.

Muitas bibliotecas e _frameworks_ já oferecem suporte ao OpenTelemetry ou são
compatíveis por meio da
[instrumentação](/docs/concepts/instrumentation/libraries/), permitindo gerar
dados de telemetria que podem ser exportados para um _backend_ de
observabilidade.

Caso você esteja instrumentando uma aplicação ou serviço que utilize bibliotecas
ou _frameworks_ de terceiros, siga estas instruções para aprender como usar
bibliotecas instrumentadas nativamente e bibliotecas de instrumentação para as
dependências do seu projeto.

## Usar bibliotecas com instrumentação nativa {#use-natively-instrumented-libraries}

Se uma biblioteca oferece suporte ao OpenTelemetry por padrão, é possível obter
rastros, métricas e logs emitidos por essa biblioteca ao adicionar e configurar
o SDK do OpenTelemetry na sua aplicação.

A biblioteca pode exigir alguma configuração adicional para sua instrumentação.
Consulte a documentação dessa biblioteca para saber mais.
{{__hugo_ctx/}}






<div class="alert alert-secondary" role="alert"><div class="h4 alert-heading" role="heading">Colabore conosco!</div>



Até o momento, não temos conhecimento de nenhuma biblioteca Go que
possua integração com o OpenTelemetry de forma nativa. Se você souber de alguma,
[avise-nos][let us know].

</div>






[let us know]:
  https://github.com/open-telemetry/opentelemetry.io/issues/new/choose
{{__hugo_ctx/}}



## Utilizando bibliotecas de instrumentação {#use-instrumentation-libraries}

Caso uma biblioteca não venha com o OpenTelemetry, você pode utilizar uma
[biblioteca de instrumentação](/docs/specs/otel/glossary/#instrumentation-library)
para gerar dados de telemetria para uma biblioteca ou framework.

Por exemplo, a
[biblioteca de instrumentação para `net/http`](https://pkg.go.dev/go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp)
cria automaticamente [trechos](/docs/concepts/signals/traces/#spans) e
[métricas](/docs/concepts/signals/metrics/) com base nas requisições HTTP.

## Configuração {#setup}

Cada biblioteca de instrumentação é um pacote. Em geral, isso significa que você
precisa usar `go get` para obter o pacote apropriado. Por exemplo, para obter as
bibliotecas de instrumentação mantidas no
[repositório Contrib](https://github.com/open-telemetry/opentelemetry-go-contrib),
execute o seguinte comando:

```sh
go get go.opentelemetry.io/contrib/instrumentation/{caminho-de-importacao}/otel{nome-do-pacote}
```

Em seguida, configure o seu código com base no que a biblioteca requer para ser
ativada.

Em [Primeiros Passos](../getting-started/) fornecemos um exemplo mostrando como
configurar a instrumentação para um servidor `net/http`.

## Pacotes disponíveis {#available-packages}

Uma lista completa de bibliotecas de instrumentação disponíveis pode ser
encontrada no
[registro do OpenTelemetry](/ecosystem/registry/?language=go&component=instrumentation).

## Próximos passos {#next-steps}

As bibliotecas de instrumentação podem gerar dados de telemetria para
requisições HTTP de entrada e saída, mas não instrumentam sua aplicação
completamente.

Enriqueça seus dados de telemetria realizando uma
[instrumentação personalizada](../instrumentation/) em seu código. Isso
complementa a telemetria da biblioteca padrão e pode oferecer dados mais
profundos sobre sua aplicação em execução.
