-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Go: Getting started should set the global propagator #3404
Comments
AFAIK this is mostly a Go problem, but I haven't gone and audited all 11 languages, heh. |
It might be an issue for Rust, C++ as well? Not sure. As an additional note: Propagation and by that correlation of traces across services is a key feature of tracing vs just writing logs, so we should indeed have more specific content around it. For some languages it is hidden in the Manual Instrumentation chapter. JS has a "Context" and "Propagation" page, but both are already very advanced. My thinking was to have a "Context Propagation" page per language that starts with expanding on the "Getting Started" example:
(See https://github.com/pavolloffay/kubecon-eu-2023-opentelemetry-kubernetes-tutorial/blob/main/03-app-instrumentation.md for an example) wdyt? |
I propose to just ensure that the propagator is set for sake of having a simple getting started. The alternative could be to extend the example with simple CLI app which calls the rolldice service using an instrumented HTTP Client instead of using the browser. This is e.g. how I demonstrated OTel Go (https://github.com/pellared/gopherconpl-opentelemetry-go) on https://gophercon.pl/ |
I agree with that, so having that set properly in the getting started is set for me (and we need eventually to validate other languages as well where we are unsure if this needs to be done)
That would work as well of course! |
For now I just propose open-telemetry/opentelemetry-go#4644 In future, I can also try adding a CLI app which calls the rolldice service using an instrumented HTTP Client instead of using the browser. However, I suggest tracking it as a separate issue as probably this should be something language agnostic as #2623 |
What needs to be changed?
The getting started examples should enable propagation. While it is not needed for the sake of the dice example, I got direct feedback from people adopting OpenTelemetry Go that they spent a lot of time finding out that they have to set the propagator explicitly.
Reference: https://opentelemetry.io/docs/instrumentation/go/getting-started/#initialize-the-opentelemetry-sdk
@open-telemetry/docs-maintainers It would be worth to check if the same problem does not exist for in getting started for other languages.
The text was updated successfully, but these errors were encountered: