Add initial opentelemetry-instrumentation-genai-bedrock boilerplate - #359
Add initial opentelemetry-instrumentation-genai-bedrock boilerplate#359DylanRussell wants to merge 6 commits into
opentelemetry-instrumentation-genai-bedrock boilerplate#359Conversation
Pull request dashboard statusWaiting on the author · refreshed 2026-08-14 16:40 UTC Respond to 1 review item (e.g. link a commit, explain why not, ask a follow-up):
Status above doesn't look right?
|
There was a problem hiding this comment.
Pull request overview
Adds a new opentelemetry-instrumentation-genai-bedrock package scaffold to the monorepo, wiring it into the workspace and test matrix so future Bedrock (boto3) patching can be implemented incrementally.
Changes:
- Introduces the new Bedrock instrumentation package structure (packaging, versioning, README, license, changelog fragment).
- Adds basic lifecycle tests and tox env wiring for
oldest/latestfactors. - Registers the package in the workspace (
pyproject.toml/uv.lock) and docs dependency set.
Reviewed changes
Copilot reviewed 17 out of 18 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| uv.lock | Adds the new package as a workspace member and records boto3/botocore/s3transfer resolution entries. |
| tox.ini | Adds bedrock test+lint envs and dependency wiring for oldest/latest. |
| pyproject.toml | Registers the new package in workspace deps and pyright include/exclude lists. |
| instrumentation/README.md | Lists the new bedrock instrumentation package and its minimum boto3 version. |
| docs-requirements.txt | Adds boto3>=1.40.46 to doc build requirements. |
| instrumentation/opentelemetry-instrumentation-genai-bedrock/pyproject.toml | New package metadata, dependencies, extras, and entry point registration. |
| instrumentation/opentelemetry-instrumentation-genai-bedrock/README.rst | New package README describing installation/usage/configuration. |
| instrumentation/opentelemetry-instrumentation-genai-bedrock/LICENSE | Adds Apache-2.0 license file for the new package. |
| instrumentation/opentelemetry-instrumentation-genai-bedrock/.changelog/360.added | Towncrier fragment announcing initial package setup. |
| instrumentation/opentelemetry-instrumentation-genai-bedrock/.changelog/.gitignore | Keeps the changelog directory tracked. |
| instrumentation/opentelemetry-instrumentation-genai-bedrock/src/opentelemetry/instrumentation/genai/bedrock/init.py | Adds BedrockInstrumentor boilerplate and completion hook wiring. |
| instrumentation/opentelemetry-instrumentation-genai-bedrock/src/opentelemetry/instrumentation/genai/bedrock/package.py | Declares _instruments dependency tuple for instrumentation_dependencies(). |
| instrumentation/opentelemetry-instrumentation-genai-bedrock/src/opentelemetry/instrumentation/genai/bedrock/version.py | Sets the package version. |
| instrumentation/opentelemetry-instrumentation-genai-bedrock/tests/init.py | Initializes the test package. |
| instrumentation/opentelemetry-instrumentation-genai-bedrock/tests/conftest.py | Registers shared GenAI test fixtures and provides an instrumentation fixture. |
| instrumentation/opentelemetry-instrumentation-genai-bedrock/tests/test_instrumentor.py | Adds basic lifecycle tests for instrument/uninstrument. |
| instrumentation/opentelemetry-instrumentation-genai-bedrock/tests/requirements.oldest.txt | Documents that oldest relies on lowest-direct resolution without extra pins. |
| instrumentation/opentelemetry-instrumentation-genai-bedrock/tests/requirements.latest.txt | Installs latest boto3 plus editable util + instrumentation for latest-factor tests. |
|
@lmolkova Should we migrate bedrock? I was under the assumption that it is going to be left in contrib. |
|
i dont think boto3 is instrumented in contrib.. well I see boto3 sqs is instrumented: https://github.com/open-telemetry/opentelemetry-python-contrib/blob/e5e3af0ccdb9c3d85728f6d7cb03d77c72196425/instrumentation/opentelemetry-instrumentation-boto3sqs/README.rst but that isn't the API we care about |
…entation # Conflicts: # docs-requirements.txt # instrumentation/README.md
| @@ -0,0 +1 @@ | |||
| Add the initial Amazon Bedrock instrumentation package setup. | |||
There was a problem hiding this comment.
how is this related to opentelemetry-instrumentation-botocore that contains bedrock runtime?
see also
https://cloud-native.slack.com/archives/C06KR7ARS3X/p1784057333165819
I think the benefits of potentially splitting the package out would be that it could integrate better into the GenAI repo/have more GenAI folks looking after it like @rm mentioned. However, if we perform a split as done in #93 this would likely create issues with double instrumentation if you attempted to use both the gen AI package and the contrib botocore package.
if we split it, one should be a dependency of the other to not break user
|
Hi @DylanRussell — just a friendly reminder that this pull request is waiting on you. There are still items that need your attention. See the dashboard status comment for the full list. You don't need to push a code change to hand it back — replying to move each discussion forward is enough, whether that's answering a question, explaining why no change is needed, or asking a follow-up. The dashboard then automatically routes it back to reviewers. If you believe this pull request is incorrectly routed as waiting on the author, comment |
Description
Add initial
opentelemetry-instrumentation-genai-bedrockboilerplate.boto3doesn't have any reference to open telemetry in it's repo, so no native instrumentation.Created the package structure targeting "boto3 >= 1.40.46" (matching openinference-instrumentation-bedrock),
Type of change
How has this been tested?
Unit tests
Checklist