OTEP-0110: zPagesの全体的な方向性

zPagesを標準的なOpenTelemetryコンポーネントにします。

動機

自己内省用のデバッグページであるzPagesは、アタッチされたプロセスから収集したデータを表示するプロセス内Webページです。 トレースやメトリクスを調べるためのバックエンドを必要とせずに、プロセス内診断を提供するために使用されます。 zPagesのさまざまな実装が、多くの環境で広く使われています。 OpenTelemetryにおけるzPagesの標準的で拡張可能な実装は、すべての人にとって有益なものとなるでしょう。

解説

このOTEPは、実験的機能としてのzPages開発 open-telemetry/opentelemetry-specification#62 の全体的な承認を求めるものです。 zPagesの概要については opencensus.io/zpages を参照してください。

内部の詳細

zPagesの実装には、データ収集(サンプリング、フィルタリング、設定)、ストレージと集約、そしてこのデータを公開するためのフレームワークという複数のコンポーネントが含まれます。

これは全体的な方向性の承認を求めるものです。開発にあたっては、いくつかの原則があります。

  1. zPagesはOpenTelemetry SDKにハードコードされては なりません (MUST NOT)。
  2. OpenTelemetryにおけるzPagesの実装は、データ用とレンダリング用という2つの別々のコンポーネントに分割され なければなりません (MUST)。 これにより、たとえばデータプロバイダーを他のレンダリングフレームワークに統合することもできるようになります。
  3. zPagesは、プロセスから公開される情報を拡張する手段を提供するフレームワークとして構築される べきです (SHOULD)。 理想的には、OpenTelemetry SDKを代替の情報源にまるごと置き換えられるところまで拡張可能であるべきです。

トレードオフと緩和策

zPagesの実装は、ベンダー固有またはユーザー固有のプラグインとして行うほうが望ましいことが判明するかもしれません。 初期の調査に基づけば、拡張可能な標準実装はすべての人にとって有益であると考えられます。

先行技術と代替技術

opencensus.io/zpages

未解決の問題

なし

今後の課題

なし