56c6503a93
First one is related to `OpenTelemetry.Ctx` API. I've noticed in a few scenarios the current span of a trace may get lost after Ecto calls. Looking at the The `attach/1` typespec, it's a Ctx -> Token, while `dettach/1` as Token -> Ctx function. That made me assume the expected input of dettach is the return type of attach. Indeed, after this change we got the behavior of Ecto calls preserve the parent span untouched. That leads to a second bug found. When ecto does simple calls within a Task, due the special propagation code for preloads that means it will skip the current span, if any. The solution here is to first check the current process. One test was added to reproduce this bug. |
||
---|---|---|
.github | ||
examples | ||
instrumentation | ||
propagators/opentelemetry_process_propagator | ||
utilities | ||
.gitignore | ||
CODEOWNERS | ||
CONTRIBUTING.md | ||
LICENSE | ||
README.md | ||
mix.exs | ||
rebar.lock |
README.md
<p align="center"> <strong> <a href="https://opentelemetry.io/docs/instrumentation/erlang/getting-started/">Getting Started<a/> • <a href="https://hexdocs.pm/opentelemetry_api/1.0.0-rc.2/OpenTelemetry.html">API Documentation<a/> </strong> </p> <p align="center"> <strong> <a href="CONTRIBUTING.md">Contributing<a/> • <a href="instrumentation/">Instrumentation<a/> • <a href="propagators/">Propagators<a/> • <a href="examples/">Examples<a/> </strong> </p>
Getting Started • API Documentation
Contributing • Instrumentation • Propagators • Examples
About this project
This is a repository for OpenTelemetry Erlang & Elixir contributions that are not part of the core repository and core distribution of the API and SDK.
Instrumentations
OpenTelemetry can collect tracing data using instrumentation. Vendors/Users can also create and use their own. Currently, OpenTelemetry supports automatic tracing for:
Supported Runtimes
OpenTelemetry requires OTP v21.3 and above.
See Elixir OTP Compatibility for supported OTP/Elixir combinations.
Contributing
We'd love your help!. Use tags [up-for-grabs][up-for-grabs-issues] and good first issue to get started with the project. Follow CONTRIBUTING guide to report issues or submit a proposal.
Useful links
- For more information on OpenTelemetry, see opentelemetry.io.
- For conventions used in OpenTelemetry traces, see the following readme.
- For help or feedback on this project, join us in GitHub Discussions,
#otel-erlang-elixir
channel in the CNCF slack, and#opentelemetry
channel in the Elixir Lang slack - Erlang SIG community page
License
Apache 2.0 - See LICENSE for more information.