ページ内ナビ
概要
OpenTelemetry PythonはOpenTelemetryのPython APIとSDKのreference implementationです。library向けのAPIとapplication向けSDKを分離し、trace、metrics、logsの生成・処理・exportを共通のtelemetry modelで扱います。
特徴と向いている用途
公式資料に基づく紹介・実機未検証 · 内容確認日:
主な特徴
APIとSDKを分離し、libraryとapplicationの責務を分ける
opentelemetry-apiはinstrumentation libraryが依存する抽象APIとno-op実装を提供し、opentelemetry-sdkはTracerProvider、MeterProvider、LoggerProvider等のreference implementationを提供します。application側でproviderやprocessor/exporterを選択できます。
向いている用途
vendor中立のobservability instrumentationをPython serviceへ入れたい場合に向く
service codeやlibrary instrumentationを特定backendから分離し、Collectorや複数vendorへtelemetryを送れる設計にしたい場合に適します。framework自動instrumentation等はcontrib repositoryと組み合わせます。
出典:[2]
導入前の確認
参考にした公式資料
- [1]open-telemetry/opentelemetry-python — GitHub repository(2026-10-06)
- [2]OpenTelemetry Python 1.45.0 — README(2026-10-06)
- [3]OpenTelemetry API 1.45.0 — pyproject.toml(2026-10-06)
- [4]OpenTelemetry SDK 1.45.0 — pyproject.toml(2026-10-06)
- [5]OpenTelemetry basic tracer example(2026-10-06)
- [6]OpenTelemetry Python 1.45.0 release(2026-10-06)
- [7]OpenTelemetry Python Apache-2.0 license(2026-10-06)
編集部からの補足
vendor中立のinstrumentationを保ちたい場合の基盤になります。library側はAPIだけへ依存し、application側でSDK/exporterを選ぶ責務分離を守るとbackend変更やCollector導入がしやすくなります。
3ステップで試す
- 1
OpenTelemetry API/SDK 1.45.0を導入する
確認対象のAPIとSDKを同じversionで固定して導入します。Python 3.10以上が必要です。
python -m pip install "opentelemetry-api==1.45.0" "opentelemetry-sdk==1.45.0" - 2
Console exporter付きtracerを作る
公式basic tracer exampleと同じ構成でSpanProcessorとConsoleSpanExporterを設定します。
cat > otel_demo.py <<'PY' from opentelemetry import trace from opentelemetry.sdk.trace import TracerProvider from opentelemetry.sdk.trace.export import BatchSpanProcessor, ConsoleSpanExporter trace.set_tracer_provider(TracerProvider()) trace.get_tracer_provider().add_span_processor(BatchSpanProcessor(ConsoleSpanExporter())) tracer = trace.get_tracer(__name__) with tracer.start_as_current_span('oss-tanbou-check'): print('Hello OpenTelemetry') PY - 3
spanをconsoleへ出力する
標準出力にHello OpenTelemetryとspan JSONが出ることを確認します。外部collectorは不要です。
python otel_demo.py
成長
成長の推移 · 直近30日
2,656 Stars
推移データを蓄積中です。
Built with
カテゴリとタグ
GitHubデータ
GitHubのデータGitHubの詳細データを見る
GitHub Topics
- correlationcontext
- distributed-tracing
- logging
- metrics
- opentelemetry
- python
- sdk
- tracecontext
- Stars
- 2,656
- Forks
- 1,030
- Watchers
- 39
- Open Issues
- 422
- Contributors
- 384
- 所有者種別
- Organization
- 主要言語
- Python
- ライセンス
- Apache-2.0
- リポジトリ最終更新
- 2026/10/06
関連情報
関連記事を投稿するこのOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。
あわせて探訪
- RQ10,693 Stars
共通タグ 2件 · 共通カテゴリ 1件 · 同じ言語
Redis・Valkeyを使ってPythonのbackground jobをqueueとworkerへ分離する軽量task queue
Python - OpenTelemetry Java2,457 Stars
共通タグ 4件 · 共通カテゴリ 2件
trace・metrics・logsのOpenTelemetry API/SDKとOTLP exporterをJavaへ組み込む
Java - Sentry45,482 Stars
共通タグ 3件 · 共通カテゴリ 2件 · 同じ言語
error・trace・replay・log・uptimeを関連付けて原因調査から修正まで支援するdeveloper debugging platform
Python - Kibana21,309 Stars
共通タグ 3件 · 共通カテゴリ 1件
Elasticsearchの検索・可視化・Observability/Security操作を担うinterface
TypeScript - Fluent Bit8,134 Stars
共通タグ 3件 · 共通カテゴリ 1件
logs・metrics・tracesを軽量plugin pipelineで収集・変換・配送するTelemetry Agent
C - Grafana Tempo5,510 Stars
共通タグ 3件 · 共通カテゴリ 1件
object storage中心で大規模traceを保持しTraceQLで探索するdistributed tracing backend
Go
情報の誤りを報告
掲載内容に誤りや古い情報があればお知らせください。