このプロジェクトについて
OpenTelemetry JavaScriptは、アプリケーションからトレース、メトリクス、ログを収集するためのベンダーニュートラルなフレームワークであるOpenTelemetryのJavaScript実装です。Node.jsとWebブラウザを対象としており、@opentelemetryスコープの下でnpmパッケージのセットとして公開されています。
このプロジェクトは、関心事をAPIレイヤーとSDK実装に分離しています。APIパッケージは、コアのトレースおよびメトリクスモデル用のTypeScriptインターフェース、列挙型、およびno-op実装を提供するため、ライブラリ作成者は特定のSDKを取り込むことなく公開APIのみに依存できます。コアパッケージは、デフォルトおよびno-op実装を提供します。SDK側では、sdk-traceがasync_hooksや計装をデフォルトで読み込まずに計装とスパン作成の制御を提供し、sdk-metricsは時系列データを報告するためのインストルメントとメーターを提供します。
はじめ方は通常、@opentelemetry/api、@opentelemetry/sdk-node、およびauto-instrumentations-nodeメタパッケージをインストールし、リソース、ConsoleSpanExporterなどのエクスポーター、および自動計装を備えたNodeSDKを構成するトレース設定ファイルを作成することから始まります。その後、アプリケーションはトレースファイルをプリロードして起動されます。診断ロガーはAPIを通じて有効にでき、テレメトリがコレクターに到達しない場合のデバッグに使用できます。
機能ステータスはシグナルごとに文書化されています。トレースとメトリクスはAPIとSDKの両方で安定しており、ログはまだ開発中です。READMEには、安定版パッケージと実験版パッケージをペアにする互換性マトリックスも公開されており、安定版パッケージは1つのバージョンラインを共有し、実験版パッケージは別のバージョンラインを共有することが記載されています。サポートされるランタイムには現在のNode.js LTSリリースが含まれ、ブラウザ計装は実験的であり、ほとんど仕様が定められていないと説明されています。最小言語機能ベースラインはECMAScript 2022です。TypeScriptサポートは2年間のサポートウィンドウに従います。
エクスポーターはベンダーに依存せず、レジストリに利用可能なエクスポーター実装がリストされていますが、ユーザーは独自のエクスポーターを作成することもできます。自動トレースは計装を通じて利用可能で、gRPCとHTTP用のコアNode計装、XMLHttpRequestとfetch用のコアWeb計装、および別のリポジトリでホストされている追加のcontrib計装があります。このプロジェクトはApache-2.0ライセンスであり、up-for-grabsおよびgood-first-issueタグを通じて貢献を歓迎し、毎週のSIGミーティングが開催されています。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.