# 計装ライブラリを使用する

Site [llms.txt](/ja/llms.txt)

---

アプリを開発する際、作業を加速するためにサードパーティのライブラリやフレームワークを使用することがあるでしょう。
OpenTelemetryを使用してアプリを計装する場合、使用するサードパーティのライブラリやフレームワークにトレース、ログ、メトリクスを手動で追加するために時間を費やすことを避けたいことがあります。

多くのライブラリやフレームワークはすでにOpenTelemetryをサポートしているか、OpenTelemetryの[計装](/docs/concepts/instrumentation/libraries/)を介してサポートされているため、テレメトリーを生成してオブザーバビリティバックエンドにエクスポートできます。

サードパーティのライブラリやフレームワークを使用しているアプリやサービスを計装する場合は、このページの手順に従って、ネイティブに計装されたライブラリと依存関係の計装ライブラリの使用方法を学んでください。

## ネイティブに計装されたライブラリを使用する {#use-natively-instrumented-libraries}

デフォルトでOpenTelemetryサポートが付属しているライブラリの場合、アプリにOpenTelemetry SDKを追加して設定することで、そのライブラリから発行されるトレース、メトリクス、ログを取得できます。

ライブラリによっては、計装のために追加の構成が必要な場合があります。
詳細はライブラリごとのドキュメントをご覧ください。






> [!IMPORTANT] ヘルプ募集中
>
> 現在のところ、OpenTelemetry がネイティブに統合された Erlang/Elixir ライブラリは把握していません。
> もしそのようなライブラリをご存知でしたら、[お知らせください][new-issue]。





[new-issue]: https://github.com/open-telemetry/opentelemetry.io/issues/new/choose



## 計装ライブラリを使用する {#use-instrumentation-libraries}

ライブラリに OpenTelemetry のサポートが含まれていない場合は、[計装ライブラリ](/docs/specs/otel/glossary/#instrumentation-library)を使用して、ライブラリやフレームワークのテレメトリーデータを生成できます。

たとえば、[Ecto 用の計装ライブラリ](https://github.com/open-telemetry/opentelemetry-erlang-contrib/tree/main/instrumentation/opentelemetry_ecto)は、クエリに基づいて自動的に[スパン](/docs/concepts/signals/traces/#spans)を作成します。

## セットアップ {#setup}

各計装ライブラリは Hex パッケージとして配布されています。
計装をインストールするには、`mix.exs` ファイルに依存関係を追加します。
たとえば、次のようにします。

```elixir
def deps do
  [
    {:opentelemetry_{package}, "~> 1.0"}
  ]
end
```

`{package}` は計装の名前です。

一部の計装ライブラリには前提条件がある場合があります。
詳細な手順については、各計装ライブラリのドキュメントを確認してください。

## 利用可能な計装ライブラリ {#available-instrumentation-libraries}

計装ライブラリの完全なリストについては、[Hex パッケージの一覧](https://hex.pm/packages?search=opentelemetry&sort=recent_downloads)を参照してください。

また、[レジストリ](/ecosystem/registry/?language=erlang&component=instrumentation)でも追加の計装を見つけることができます。

## 次のステップ {#next-steps}

計装ライブラリをセットアップした後は、カスタムテレメトリーデータを収集するために、コードに独自の[計装](/docs/languages/erlang/instrumentation)を追加することを検討してください。

また、テレメトリーデータを1つ以上のテレメトリーバックエンドに[エクスポート](/docs/languages/erlang/exporters)するために、適切なエクスポーターを設定することも検討してください。
