問題タブ [mutiny]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
130 参照

java - 親コンテキストに接続されていないスパン

このマイクロサービスでhttps://github.com/dcdh/inner-friends-user-profile-picture私は opentelemetry を実装しようとしています。

ただし、スパンの 1 つが欠落しているため、E2ETest は失敗しています。掘った後、私は彼を見つけましたが、彼は親に執着していません.

ここに画像の説明を入力

孤立したスパン「HazelcastUserProfilePictureCacheRepository.store」は、2 つのスパンを持つ 2 番目のトレースにある必要があります。

失敗するコードの例

このマイクロサービスは、ヘキサゴナル アーキテクチャを使用して設計しました。ドメインは Mutiny を使用して Async 方式で設計します。インフラストラクチャに関してquarkus-smallrye-context-propagationは、コンテキストを伝播するために使用します。オープンテレメトリに関しては、プログラムで新しいスパンを作成するOpenTelemetryTracingServiceので、ここに親コンテキストを挿入する必要があるかもしれません。ただし、それを行う方法についてはまったくわかりません(スパンビルダーでアタッチするためにそれを取得する適切な方法は何ですか)。

エントリポイントが入っている保存機能についてSaveUserProfilePictureUseCase

インフラストラクチャで s3 ストレージを呼び出します

hazelcast キャッシュ リポジトリを呼び出している

どちらもopenTelemtryTracingServiceスパンのライフサイクルを管理するために を呼び出します。

再現する手順

  1. コードをチェックアウトする
  2. should_store_user_profile_pictureE2ETest で実行

SaveUserProfilePictureUseCaseUni をチェーンするときにコンテキストが失われているはずだと思います。

この実装の何が問題なのか教えてください。

事前に感謝します。

よろしく、

ダミアン