HydrologicEngineeringCenter / HydrologicEngineeringCenter/cwms-python
Support use of W3C TraceContext
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 16
- Forks
- 11
- Avg merge
- 4d 6h
- Merged PRs (30d)
- 8
Description
CDA has implemented support for the W3C TraceContext that OpenTelemetry uses: https://github.com/USACE/cwms-data-api/pull/1800
cwms-python should except or create on API start, add allow update at any time, an appropriate traceparent header to send with all HTTP requests.
This will allow better correlation of issues in the logs.
NOTE: Recommend using the opentelemetry python library to implement the spans, traces, and propagators for this to work. There should be decorators in the library to avoid excessive boilerplate.
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
No files or tests are named. Start by locating the API initialization and the path used for all HTTP requests, then review the recommended OpenTelemetry Python library for propagators and decorators. Done means the client can accept or create trace context at startup, update it later, and send an appropriate traceparent header with every request.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- backend-api-design, observability
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100