Emit OpenTelemetry tracing
- Dominant language
- C#
- Stars
- 989
- Forks
- 340
- Avg merge
- 4d 19h
- Merged PRs (30d)
- 72
Description
OpenTelemetry has become the de-facto standard for distributed, cross-platform tracing; it is being rapidly adopted both inside the .NET ecosystem and outside. OTel defines semantic conventions for how a database client traces information; [these specifications](https://opentelemetry.io/docs/specs/semconv/database/database-spans/) are currently in experimental state, but stabilization is likely start happening soon.
There is a separate instrumentation library, [OpenTelemetry.Instrumentation.SqlClient](https://github.com/open-telemetry/opentelemetry-dotnet/blob/main/src/OpenTelemetry.Instrumentation.SqlClient/README.md#steps-to-enable-opentelemetryinstrumentationsqlclient), which AFAIK uses the DiagnosticSource instrumentation already emitted by SqlClient to then emit OpenTelemetry tracing.
However, ideally SqlClient would emit this tracing data directly, without requiring a 3rd-party library.
Contributor guide
Assessment
This issue has not been assessed yet.