odigos-io / opentelemetry-go-instrumentation

OpenTelemetry auto-instrumentation for Go applications
Apache License 2.0
289 stars 44 forks source link

[Question] How to configure emojivoto to propagate context? #28

Closed ymtdzzz closed 2 years ago

ymtdzzz commented 2 years ago

Hi, thanks for such a nice project!

I tried using this with emojivoto, but I'm having trouble with context propagation. Tracing a single service works fine but the traffic across some services is traced as different trace id.

Expected Behavior

Trace ID is propagated across multiple services

Actual Behavior

A series of events across multiple services are traced as different traces

Screenshot from 2022-08-03 22-15-26

Screenshot from 2022-08-03 22-17-25

Steps to Reproduce the Problem

  1. checkout https://github.com/ymtdzzz/emojivoto-opentelemetry-sample/tree/feature/ebpf
  2. start k8s cluster (such as minikube)
  3. deploy as described in the README
  4. curl "http://your-node-ip:30084/api/list"
  5. access to http://your-node-ip:30081 and check the traced data

Additional Info

clientVersion:
  buildDate: "2022-07-13T14:21:56Z"
  compiler: gc
  gitCommit: aef86a93758dc3cb2c658dd9657ab4ad4afc21cb
  gitTreeState: clean
  gitVersion: v1.24.3
  goVersion: go1.18.4
  major: "1"
  minor: "24"
  platform: linux/amd64
kustomizeVersion: v4.5.4
serverVersion:
  buildDate: "2022-05-24T12:18:48Z"
  compiler: gc
  gitCommit: 3ddd0f45aa91e2f30c70734b175631bec5b5825a
  gitTreeState: clean
  gitVersion: v1.24.1
  goVersion: go1.18.2
  major: "1"
  minor: "24"
  platform: linux/amd64
ymtdzzz commented 2 years ago

https://github.com/keyval-dev/opentelemetry-go-instrumentation/blob/master/docs/design/context-propagation.md

Oh sorry, the context propagation feature hasn't been supported yet? If that so, I'd love to wait for it to be implemented! Thank you.