[OpenTelemetry] Go のコンパイル時計装において、ctx 伝搬なしで span を紐づける仕組みについて調べた
- OpenTelemetryのコンパイル時計装でctxを伝搬しなくてもspanを親子にできるGLSが実装されている
- GLSはruntimeのg構造体にフィールドを追加し、spanスタックを保持する。sdk/traceのpush/popフックとtrace.SpanFromContextのreadフックで動作する
- GLSを有効にするには_ "go.opentelemetry.io/otel/sdk/trace"のblank importが必要で、このimportがないとルールが適用されない
[OpenTelemetry] Go のコンパイル時計装において、ctx 伝搬なしで span を紐づける仕組みについて調べた


