fix(pymongo): support database semconv migration#4682
Open
popsiclelmlm wants to merge 1 commit into
Open
Conversation
Assisted-by: OpenAI Codex
a331835 to
0acc3cd
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Fixes #1629
Summary
Adds database semantic convention migration support to the PyMongo instrumentation.
Reproduction
With
OTEL_SEMCONV_STABILITY_OPT_IN=database, PyMongo spans still emitted the legacy database span attributes such asdb.system,db.name, anddb.statement, and the tracer schema URL stayed at1.11.0.Root cause
The PyMongo instrumentation set legacy database attributes directly and used a hard-coded legacy schema URL instead of the shared semantic convention migration helpers.
Changes
db.system, database name, and statement attributes.database, anddatabase/dupmodes.Tests
.venv/bin/python -m tox -e py314-test-instrumentation-pymongo.venv/bin/python -m tox -e lint-instrumentation-pymongo.tox/lint-instrumentation-pymongo/bin/ruff check instrumentation/opentelemetry-instrumentation-pymongo/src/opentelemetry/instrumentation/pymongo/__init__.py instrumentation/opentelemetry-instrumentation-pymongo/tests/test_pymongo.pyScreenshots/Logs
Not applicable; this is a tracing attribute behavior change covered by unit tests.
Type of change
Does This PR Require a Core Repo Change?
Checklist: