open-telemetry / open-telemetry/opentelemetry-python-contrib
Support for Django middleware instrumentation
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 1.1k
- Forks
- 1.1k
- Avg merge
- 4d 15h
- Merged PRs (30d)
- 16
Description
What problem do you want to solve?
It's common to see user-defined middleware in Django - https://docs.djangoproject.com/en/5.2/topics/http/middleware/#writing-your-own-middleware
At present, the django instrumentor does not automatically capture them as spans, leaving large gaps of unaccounted time in the trace for applications that use them:
Describe the solution you'd like
Automated creation of spans for middleware calls in django.
Describe alternatives you've considered
-
Manual creation of spans
-
Decorating middleware functions
Additional Context
No response
Would you like to implement a fix?
None
Tip
React with 👍 to help prioritize this issue. Please use comments to provide useful context, avoiding +1 or me too, to help us triage it. Learn more here.
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 locating the Django instrumentor and tracing the request entry point through user-defined middleware. Confirm how existing Django spans are created and identify where middleware calls can be represented. Done means middleware execution is automatically captured as spans, with tests covering the behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- django, python
- Domain
- backend, observability
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100