-
Notifications
You must be signed in to change notification settings - Fork 20
[chore] Sync OpenTelemetry upstream main. #75
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
…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>
|
|
Common change logs
opentelemetry-instrumentation-requests,opentelemetry-instrumentation-wsgi,opentelemetry-instrumentation-asgiDetect synthetic sources on requests, ASGI, and WSGI.(#3674)
Added
opentelemetry-instrumentation-redis: add support forsuppress_instrumentationcontext manager for both sync and async Redis clients and pipelinesopentelemetry-instrumentation-django: improve docs for response_hook with examples of providing attributes from middlewares(#3923)
(#3589)
(#3967)
opentelemetry-instrumentation-redis: add missing copyright header for opentelemetry-instrumentation-redis(#3976)
Fixed
asyncio.iscoroutinefunctionwithinspect.iscoroutinefunction.(#3880)
opentelemetry-instrumentation-pymongo: Fix span error descriptions(#3904)
(#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
log event (
gen_ai.client.inference.operation.details) behind the flagOTEL_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
GEN_AI_OPENAI_REQUEST_SERVICE_TIERfor requestattributes and
GEN_AI_OPENAI_RESPONSE_SERVICE_TIERfor response attributes.(#3920)
(#3760)
genai-util change logs
(#3943)
(#3862)