open-telemetry / open-telemetry/opentelemetry-python-contrib
Instrumentations do not use `tracer_provider` argument to create a tracer instances
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 1.1k
- Forks
- 1.1k
- Avg merge
- 4d 15h
- Merged PRs (30d)
- 16
Description
Users can optionally pass an instance of TracerProvider to SomeInstrumentator.instrument(tracer_provider=...). Instrumentations should use this tracer_provider and fall back to global tracer provider if not given. As of now some instrumentations directly use global tracer provider which is not expected because providers can have different configuration such as Resource.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the instrumentation implementations that create tracers and identify the ones using the global tracer provider instead of the instrument method's tracer_provider argument. Verify that an explicitly supplied provider is used and that the global provider remains the fallback, including coverage for providers with different Resource configuration.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- observability-sre
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100