ライブラリ / SDK
open-telemetry/opentelemetry-cpp avatar
open-telemetry/opentelemetry-cpp

OpenTelemetry C++の対応標準と計装の入口

OpenTelemetry C++ クライアント。 Bazel で使用するには、MODULE.bazel ファイルに以下を追加します。 最新バージョンについては、BCR: opentelemetry-cpp を参照してください。

スター 1,376フォーク 631C++Apache-2.0

ひと目でわかる

これは何?
OpenTelemetry の C++ クライアントは、traces、metrics、logs の 3 つのシグナルで安定したステータスを報告しており、CI プラットフォームのマトリクスと、文書化されたコントリビューションおよびリリースのプロセスを備えています。
誰に向いている?
README のリリースマイルストーンに記載された日付と機能は見積もりであり、変更される可能性があります。このリポジトリが仕様のどの部分を実装しているかは、OpenTelemetry 仕様リポジトリの仕様適合性マトリクスで確認してください。
商用利用できる?
できます。Apache-2.0 は寛容なライセンスで、著作権表示とライセンス表示を残せば、使用・改変・販売が可能です。
今もメンテナンスされている?
されています。最後のコミットは 5 日前です。
何の言語で書かれている?
主に C++ です(GitHub の言語統計による)。

回答はプロジェクトの GitHub データ(最終同期:2026年9月14日)と当サイトの分析に基づくもので、法的助言ではありません。

オープンソース詳細解説

OpenTelemetry の C++ クライアント

このリポジトリは OpenTelemetry の C++ クライアントであり、C++ で書かれ、プロジェクトのホームページは opentelemetry.io です。README は、プロジェクトのステータスが logs、metrics、traces の 3 つのシグナルすべてで安定していると宣言しています。実装されている仕様の範囲については、open-telemetry/opentelemetry-specification リポジトリの仕様適合性マトリクスを参照するよう案内しています。リポジトリメタデータには、スター 1,337、フォーク 593、未解決の issue 254 が記録されており、アーカイブ済みにはなっていません。README には、パフォーマンスベンチマーク、本番環境の結果、セキュリティ保証は記載されておらず、これらは他の情報源で確認する必要があります。

対応 C++ 標準と CI プラットフォームのマトリクス

コードは一般に ISO/IEC 14882:2014(C++14)、ISO/IEC 14882:2017(C++17)、ISO/IEC 14882:2020(C++20)、ISO/IEC 14882:2024(C++23)に対応しており、例外は個々の README.md ファイルに記載されます。C プログラミング言語のサポートは現在のプロジェクトの目標ではないと明記されています。CI パイプラインは、x86-64 上の Ubuntu 22.04 と 24.04、arm64 上の macOS 14 と 15、x86-64 上の Windows Server 2022 と 2025 でビルドとテストを行います。プラットフォーム表を 1 行ずつ読むと、Ubuntu 22.04 は CMake、Ubuntu 24.04 は CMake と Bazel の両方、macOS 14 は CMake、macOS 15 は Bazel、Windows Server 2022 は CMake と Bazel の両方、Windows Server 2025 は CMake を使用します。README は、記載された C++ 標準に対応するコンパイラを持つすべてのプラットフォームでビルドできるはずだと述べています。具体的なコンパイラ名やバージョンは記載されていません。

インストール、Bazel、最小限の例

インストール手順は INSTALL.md にあり、オープンソースの依存関係とライセンス要件は docs/dependencies.md にあります。このプロジェクトは Bazel Central Registry で公開されており、README は MODULE.bazel ファイルに bazel_dep(name = "opentelemetry-cpp", version = "x.y.z") を追加する例を示し、最新バージョンについてはレジストリを参照するよう案内しています。examples/simple ディレクトリには、単純な processor と console exporter を使って小さなライブラリを計装する最小限のプログラムがあり、CMake と Bazel のビルドファイルが付属しています。その例は最小限の計装フローのみを対象としており、README は他の exporter やプロセッサの種類については説明していません。また、その Bazel スニペット以外のコマンドラインインストール例もありません。

はじめにとリファレンスドキュメント

はじめにのガイドとリファレンスドキュメントは opentelemetry-cpp.readthedocs.io で公開されており、README はアプリケーションの所有者とライブラリ作成者の両方を、ガイドをリポジトリ内で再掲する代わりにそのサイトへ案内しています。README 自体には API の詳細、exporter の一覧、バージョン番号は含まれておらず、それらは readthedocs サイトまたはソースツリーで確認する必要があります。README の最初の行は、より広いプロジェクトのサイトとして opentelemetry.io にリンクしています。README が列挙していないため、この記事は特定のクラス名や関数名について推測しません。

コントリビューション、ミーティング、ガバナンス

コントリビューションの指針は CONTRIBUTING.md にあります。プロジェクトは毎週ミーティングを行い、月曜 13:00 PT と水曜 9:00 PT を交互に使用します。日付と Zoom リンクは OpenTelemetry コミュニティカレンダーにあり、議事録は公開された Google ドキュメントです。議論は CNCF Slack の #otel-cpp チャンネルで行われ、新しい CNCF Slack アカウントは slack.cncf.io で作成できます。ミーティングは誰でも参加でき、README は経験レベルを問わず貢献者を歓迎すると明記しています。README には、5 人のメンテナー(Doug Barker、Ehsan Saei、Microsoft の Lalit Kumar Bhasin、Oracle の Marc Alff、Microsoft の Tom Tan)、1 人のアプルーバー(WenTao Ou)、およびメンテナー・アプルーバー・トリアージャーの役割にわたる 9 人の名誉リストが記載されています。README は正式なガバナンスの意思決定プロセスを説明しておらず、役割の定義についてはコミュニティリポジトリへのリンクを提供しています。

リリース、マイルストーン、Apache-2.0 ライセンス

既存のリリースは GitHub のリリースページにあり、今後の作業はプロジェクトのマイルストーンで追跡されます。README は、issue とマイルストーンに記載された日付と機能は見積もりであり、変更される可能性があると述べています。このリポジトリは Apache-2.0 ライセンスで提供されています。ライセンスの抜粋は、作品の複製、派生作品の作成、公開表示、公開実演、サブライセンス、頒布を行う永続的で世界的、非独占的、無償、ロイヤリティフリー、取消不能な著作権ライセンスを付与します。また、作品またはコントリビューションが直接的または間接的に特許を侵害していると主張する特許訴訟を提起した場合に終了する特許ライセンスも付与します。抜粋には保証、サポート、セキュリティの態勢については記載がなく、商標許諾や責任制限の条項も含まれていません。完全なライセンス文書に保証の免責事項があります。

編集部の結論

README のリリースマイルストーンに記載された日付と機能は見積もりであり、変更される可能性があります。このリポジトリが仕様のどの部分を実装しているかは、OpenTelemetry 仕様リポジトリの仕様適合性マトリクスで確認してください。

公式情報源

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
コミュニティノート

コミュニティノート