Azure / Azure/azure-sdk-for-rust
Cosmos: Review use of tracing spans and logs
- Dominant language
- Rust
- Stars
- 884
- Forks
- 365
- Avg merge
- 2d 19h
- Merged PRs (30d)
- 109
Description
The driver will not directly emit OpenTelemetry spans, so that when used from an SDK, diagnostics can be "shipped" back from the driver and used to emit OTEL spans there.
However, we need rich tracing and logging within the driver in order to diagnose issues at development time, or for customers to enable when detailed debug logging is needed. Let's review our use of `tracing` and focus it primarily on this scenario, leaving Diagnostics as the user-visible telemetry API.
Contributor guide
Research direction
Start by surveying the Cosmos driver’s existing tracing and logging call sites and the boundary between these mechanisms and Diagnostics. Compare the current usage with the stated goal of rich development-time and customer-debug telemetry without direct OTEL emission. Done means the tracing and logging responsibilities are reviewed and the intended separation from the user-visible Diagnostics API is clear.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- backend, observability-sre
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100