問題タブ [open-telemetry]
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.
google-cloud-run - OpenTelemetry を使用した Google Cloud Run でのトレースの伝播
Python gRPC サービスと通信する Flask アプリがあり、どちらも Google Cloud Run にデプロイされています。アプリをインストルメント化した後、Google Trace でトレースを確認できますが、それらはすべて異なるトレース ID を持っているように見えます。これは、トレースが 2 つのサービス間でリンクされていないことを意味します。これは、両側に grpc/Flask インストルメンターがセットアップされている両方のサービスでトレースするための私のセットアップ コードです。
ConsoleSpanExporter を使用して、両方のサービスのトレース ID が一致していることをローカルで確認できますが、Google Cloud Run では、明らかに Google Trace で個別のトレースが生成されないため、ネットワークがサービス間のヘッダーを削除するか、他の何かが削除されるかどうか疑問に思っています。発生しているということは、Trace ID が伝播されていないことを意味しますか?
追加のメモとして、Cloud Run の Trace/Span ID の前にあるロード バランサーが CloudTraceSpanFormatPropagator() を使用して伝播されていないことにも気付きました。これにより、ログがリクエストに対してネストされていないため、ログが乱雑になります。