open-telemetry / open-telemetry/opentelemetry-python-contrib
AWS bedrock-runtime instumentation for botocore
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 1.1k
- Forks
- 1.1k
- Avg merge
- 4d 15h
- Merged PRs (30d)
- 16
Description
This is a tracking issue for the implementation of tracing for Converse and InvokeModel APIs and their respective streaming version. Big difference between the two APIs is that converse is the same for every model while InvokeModel requests and response are different for each model.
- converse #3161
- invokeModel #3200
- converseStream #3204
- InvokeModelWithStreamResponse #3206
- error handling for streaming https://github.com/open-telemetry/opentelemetry-python-contrib/pull/3211
- close span also when closing stream by calling
__wrapped__.close()https://github.com/open-telemetry/opentelemetry-python-contrib/pull/3481 - server attributes (generic for botocore?), also in metrics https://github.com/open-telemetry/opentelemetry-python-contrib/pull/3448?notification_referrer_id=NT_kwDNMoSxMTYxMDc3ODg4NzU6MTI5MzI#event-17474160455
- user events https://github.com/open-telemetry/opentelemetry-python-contrib/pull/3258
- system events https://github.com/open-telemetry/opentelemetry-python-contrib/pull/3266
- choice events https://github.com/open-telemetry/opentelemetry-python-contrib/pull/3275
- tool calls https://github.com/open-telemetry/opentelemetry-python-contrib/pull/3302
- investigate amazon.nova not using tool calls with invokeModel https://github.com/open-telemetry/opentelemetry-python-contrib/pull/3385
- metrics https://github.com/open-telemetry/opentelemetry-python-contrib/pull/3326
- investigate passing models as parameters but use family as parameter id, see https://docs.pytest.org/en/stable/example/parametrize.html#set-marks-or-test-id-for-individual-parametrized-test
- proper semconv attribute for cloud region https://github.com/open-telemetry/opentelemetry-python-contrib/pull/3474
- http stable semconv opt-in support
- more models for InvokeModel* ? https://github.com/open-telemetry/opentelemetry-python-contrib/pull/3419
- other bedrock runtime apis?
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 existing Converse, InvokeModel, and streaming instrumentation entry points, then choose one of the unchecked checklist items, such as model parameterization or HTTP stable semantic-convention opt-in support. Use the linked pytest parametrization guidance where relevant; done means completing a narrowly selected item and verifying it against the issue checklist.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws, python
- Domain
- cloud, observability
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100