Skip to content

Conversation

@Cirilla-zmh
Copy link
Collaborator

@Cirilla-zmh Cirilla-zmh commented Dec 2, 2025

Common change logs

  • opentelemetry-instrumentation-requests, opentelemetry-instrumentation-wsgi, opentelemetry-instrumentation-asgi Detect synthetic sources on requests, ASGI, and WSGI.
    (#3674)

Added

  • opentelemetry-instrumentation-redis: add support for suppress_instrumentation context manager for both sync and async Redis clients and pipelines
  • opentelemetry-instrumentation-django: improve docs for response_hook with examples of providing attributes from middlewares
    (#3923)
  • Update for Log SDK breaking changes. Rename InMemoryLogExporter to InMemoryLogRecordExporter in several tests
    (#3589)
  • opentelemetry-instrumentation: allow to skip all instrumentations loading with a wildcard
    (#3967)
  • opentelemetry-instrumentation-redis: add missing copyright header for opentelemetry-instrumentation-redis
    (#3976)

Fixed

  • Replace Python 3.14-deprecated asyncio.iscoroutinefunction with inspect.iscoroutinefunction.
    (#3880)
  • opentelemetry-instrumentation-pymongo: Fix span error descriptions
    (#3904)
  • build: bump ruff to 0.14.1
    (#3842)
  • opentelemetry-instrumentation-redis: Add default span name for pipeline operations
    (#3941)
  • opentelemetry-instrumentation-pymongo: Fix invalid mongodb collection attribute type
    (#3942)
  • opentelemetry-instrumentation-aiohttp-client: Fix metric attribute leakage
    (#3936)
  • opentelemetry-instrumentation-aiohttp-client: Update instrumentor to respect suppressing http instrumentation
    (#3957)

instrumentation-google-genai change logs

  • Ensure log event is written and completion hook is called even when model call results in exception. Put new
    log event ( gen_ai.client.inference.operation.details) behind the flag OTEL_SEMCONV_STABILITY_OPT_IN=gen_ai_latest_experimental.
    Ensure same sem conv attributes are on the log and span. Fix an issue where the instrumentation would crash when a pydantic.BaseModel class was passed as the response schema (#3905).

instrumentation-openai-v2 change logs

  • Release version 2.2b0.
  • Fix service tier attribute names: use GEN_AI_OPENAI_REQUEST_SERVICE_TIER for request
    attributes and GEN_AI_OPENAI_RESPONSE_SERVICE_TIER for response attributes.
    (#3920)
  • Filter out attributes with the value of NotGiven instances
    (#3760)

genai-util change logs

  • Minor change to check LRU cache in Completion Hook before acquiring semaphore/thread (#3907).
  • Add environment variable for genai upload hook queue size
    (#3943)
  • Add more Semconv attributes to LLMInvocation spans.
    (#3862)

DylanRussell and others added 24 commits November 12, 2025 13:08
…mentation package (#3905)

* Fix a few bugs in gen AI instrumentation

* Make a lot of changes

* Remove print statements

* fix lint issues

* remove added folder

* Address comments

* Move code into helper

* Revert change to pyright include
The generate_instrumentation_bootstrap.py script was failing with a
ruff linting error (PLC0415: import should be at top-level) when
checking the auto_instrumentation module.

Add noqa comment to suppress this error for the gevent monkey patch
import, which is intentionally inside a try-except block for
conditional loading. This allows the bootstrap generation script
to complete successfully.
…ion instead of the _DocumentOut (#3904)

* use the errmsg as the status description instead of the _DocumentOut

* fix the unit tests (in particular the test was mocking event.failure as a str, when that's not what the type is)

* reformat, fix tests

* add changelog

---------

Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
…(#3880)

* Replace asyncio.iscoroutinefunction with inspect.iscoroutinefunction

Fixes #3879

* Fix import ordering

* aiokafka test workaround for CPython 3.9 bug

* Apply suggestions from code review

---------

Co-authored-by: Emídio Neto <9735060+emdneto@users.noreply.github.com>
Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
… attribute type (#3942)

* opentelemetry-instrumentation-pymongo: fix invalid mongodb collection attribute type

* update CHANGELOG.md
…ne operations (#3941)

* opentelemetry-instrumentation-redis: add default span name for pipeline operations

* update CHANGELOG.md

---------

Co-authored-by: Emídio Neto <9735060+emdneto@users.noreply.github.com>
Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
* feature: add genai llm request semconv attrs

* feat: add response attributes to LLM invocation spans

* fix inconsistent attrs on fail/stop

* add changelog

* fix: update version for semconvs

* fix: clean up nits

* refactor: redo type hints to use built-in generic types, remove optional typing

* feat: deduplicate finish reasons in LLMInvocation attributes
…respect http instrumentation suppression (#3957)

* fix aiohttp-client to respect http instrumentation suppression

* update CHANGELOG.md
…entation in Redis commands and pipelines (#3955)

* opentelemetry-instrumentation-redis: implement suppression of instrumentation in Redis commands and pipelines

- Added `suppress_instrumentation` context manager to allow selective disabling of instrumentation for Redis commands and pipelines.
- Updated the Redis instrumentation to check if instrumentation is enabled before executing commands.
- Added unit tests to verify the functionality of the suppression feature for both synchronous and asynchronous Redis operations.

* Doc

* Ruff

* Disable too-many-public-methods for tests file

* Update instrumentation/opentelemetry-instrumentation-redis/src/opentelemetry/instrumentation/redis/__init__.py

---------

Co-authored-by: Emídio Neto <9735060+emdneto@users.noreply.github.com>
Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
…akage (#3936)

* opentelemetry-instrumentation-aiohttp-client: fix metric attribute leakage

* opentelemetry-instrumentation-aiohttp-client: add tests verifying isolation of metric attributes

* update tests and CHANGELOG.md

---------

Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
* Rename InMemoryLogExporter to InMemoryLogRecordExporter

* Remove added file

* Update

* Remove alias

* Update

* Added backward compatibility in imports

* Lint

* Lint

* Lint for real this time :)
…duration (#3912)

* Fix FlaskInstrumentor http.server.request.duration exemplars

* Fix FlaskInstrumentor http.server.duration exemplars

* Add unit test

* Changelog

* lint

* Add flask functional test for exemplars

* lint

* More docker-test deps

* More concise

* Refactor metrics_context assignment, update test

---------

Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
* fix: Fix service tier attribute names in openai-v2 instrumentation

* polish: extracting service_tier from extra_body.

* Extract service_tier from extra_body when not in kwargs

In OpenAI SDK 1.26.0, service_tier is passed via extra_body.
Update get_llm_request_attributes to check both kwargs and extra_body
for service_tier to support both ways of passing it.

* Add changelog entry for service tier attribute fix

Fix #3920: Add changelog entry documenting the fix for service tier
attribute names.

* wip: adding checks for service_tier.

* wip: fix linting errors.

---------

Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
…with examples of providing attributes from middlewares (#3923)

* instrumentation/django: improve docs for response hooks

* changelog

* modify new sections as subsections under "Request and Response hooks"

---------

Co-authored-by: Tammy Baylis <96076570+tammy-baylis-swi@users.noreply.github.com>
Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
* Add lmolkova to approvers

* Update README.md

---------

Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
* fix: remove attributes where the value is NOT_GIVEN in openai-v2 instrumentation for chat.completions.create operations

* Generalize check for instances of NotGiven

* Test embeddings for NotGiven values

* Bump tested openai version to latest

* Add a test README for giving hints on recording tests cassettes

* Fix lint

* Fix CI for oldest

* Add missing type

* Stick to older jiter for PyPy

* Move test README in tests

* Add response_service_tier to test assertion

---------

Co-authored-by: bkawecki <bkbkawecki@gmail.com>
Co-authored-by: otelbot <197425009+otelbot@users.noreply.github.com>
…instrumentations (#3967)

* opentelemetry-instrumentation: add support to skip all the available instrumentations

Introduce support for skipping all the available instrumentation with a wildcard *.

e.g. OTEL_PYTHON_DISABLED_INSTRUMENTATIONS="*"

* Add changelog
…(#3976)

* add missing copyright header for opentelemetry-instrumentation-redis

* add changelog entry
Change-Id: I0e896dae01d6b42d0321b08c3fcf41a41c24a4e7
Co-developed-by: Cursor <noreply@cursor.com>
Change-Id: I427ce423c2d19677988b782433cb828f08483b90
Co-developed-by: Cursor <noreply@cursor.com>
@Cirilla-zmh Cirilla-zmh added infra The infra label represents issues related to Infrastructure Skip Changelog PRs that do not require a CHANGELOG.md entry synchronize upstream This is a synchronization PR from OpenTelemetry upstream. labels Dec 2, 2025
@CLAassistant
Copy link

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.
1 out of 17 committers have signed the CLA.

✅ Cirilla-zmh
❌ toshok
❌ lukeina2z
❌ DylanRussell
❌ phillipuniverse
❌ Elyahou
❌ hectorhdzg
❌ aabmass
❌ herin049
❌ keith-decker
❌ tammy-baylis-swi
❌ JacksonWeber
❌ vasantteja
❌ piotrjez
❌ xrmx
❌ otelbot[bot]
❌ pmeier
You have signed the CLA already but the status is still pending? Let us recheck it.

@Cirilla-zmh Cirilla-zmh merged commit b885592 into main Dec 2, 2025
1314 of 1319 checks passed
@Cirilla-zmh Cirilla-zmh deleted the chore/sync-otel-20251202 branch December 2, 2025 13:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

infra The infra label represents issues related to Infrastructure Skip Changelog PRs that do not require a CHANGELOG.md entry synchronize upstream This is a synchronization PR from OpenTelemetry upstream.

Projects

None yet

Development

Successfully merging this pull request may close these issues.