Skip to content

Add initial opentelemetry-instrumentation-genai-bedrock boilerplate - #359

Open
DylanRussell wants to merge 5 commits into
open-telemetry:mainfrom
DylanRussell:add_bedrock_instrumentation
Open

Add initial opentelemetry-instrumentation-genai-bedrock boilerplate#359
DylanRussell wants to merge 5 commits into
open-telemetry:mainfrom
DylanRussell:add_bedrock_instrumentation

Conversation

@DylanRussell

Copy link
Copy Markdown
Contributor

Description

Add initial opentelemetry-instrumentation-genai-bedrock boilerplate. boto3 doesn'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

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

How has this been tested?

Unit tests

Checklist

  • Followed the style guidelines of this project
  • Changelog updated if the change requires an entry
  • Unit tests added
  • Documentation updated

@opentelemetry-pr-dashboard

opentelemetry-pr-dashboard Bot commented Aug 5, 2026

Copy link
Copy Markdown

Pull request dashboard status

Waiting on reviewers · refreshed 2026-08-06 03:12 UTC

Review the latest changes.

Status above doesn't look right?
  • Just replied or pushed? Anything around or after the refresh time above may not be picked up yet — give it a few minutes.
  • Anything look wrong? Report it with what you expected; it helps us improve the dashboard.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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/latest factors.
  • 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.

Comment thread instrumentation/opentelemetry-instrumentation-genai-bedrock/README.rst Outdated
@eternalcuriouslearner

Copy link
Copy Markdown
Contributor

@lmolkova Should we migrate bedrock? I was under the assumption that it is going to be left in contrib.

@DylanRussell

Copy link
Copy Markdown
Contributor Author

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

3 participants