Commit Graph

2602 Commits

Author SHA1 Message Date
Aaron Abbott 4fb00c9894
Stamp uploaded references refs onto spans and logs (#3763)
* Stamp gen ai refs on spans and logs

* remove log body stamping

* fix lint
2025-09-18 20:07:33 +00:00
Aaron Abbott ee947cec0c
Fix the changelog from #3716 (#3764)
See https://github.com/open-telemetry/opentelemetry-python-contrib/pull/3716,
the changelog entry should have been in the sub-package specific one.
2025-09-17 20:48:37 +00:00
Aaron Abbott 7819be1850
Add `fsspec` gen ai upload hook (#3759)
* Add fsspec gen ai upload hook

* split up into sub-package to make imports cleaner

* Get rid of FsspecUploader separate class

* comments, clean up doc strings
2025-09-17 13:44:44 -04:00
Riccardo Magliocchetti 7bac6bedef
Revise component owners (#3757)
* Revise codeowners

Drop from codeowners people that have not partecipated in the last year

While at it sort the entries.

* Add entry for util/opentelemetry-util-genai
2025-09-17 14:16:34 +00:00
Aaron Abbott 7eb92032b2
Define genai content uploader hook and entry point (#3752)
* Get genai utils sphinx docs building

* Add genai types and utils for loading an uploader hook
2025-09-15 15:56:21 -04:00
otelbot[bot] 843f345348
Update version to 1.38.0.dev/0.59b0.dev (#3746)
Co-authored-by: otelbot <197425009+otelbot@users.noreply.github.com>
Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
2025-09-11 12:00:58 +00:00
Riccardo Magliocchetti 2d46564015
Exclude opentelemetry-util-genai from release upload (#3747)
Because it should be released on its own.
While at it fix its README.rst formatting.
2025-09-11 13:35:07 +02:00
Emídio Neto 487f901c54
infra: ignore pushes on otelbot branches (#3744)
Signed-off-by: emdneto <9735060+emdneto@users.noreply.github.com>
2025-09-11 07:04:30 +00:00
Artem Ziborev 6c2aa7f778
refactor(flask): replace SpanAttributes with semconv attributes (#3539)
* refactor(flask): replace SpanAttributes with semconv attributes

* refactor(flask): replace SpanAttributes with semconv attributes (fix wrong import)

* refactor(flask): replace SpanAttributes with semconv attributes (fix ruff linting)
2025-09-10 12:23:25 +00:00
Luke (GuangHui) Zhang 4afa1eeb8f
botocore: Add support for AWS Step Functions semantic convention attributes (#3737)
* botocore: Add support for AWS Step Functions semantic convention attributes

AWS Step Functions defines two semantic convention attributes:

aws.step_functions.activity.arn
aws.step_functions.state_machine.arn

https://github.com/open-telemetry/semantic-conventions/blob/main/docs/registry/attributes/aws.md#amazon-step-functions-attributes

Currently, these attributes are not set in the botocore instrumentation library. This PR adds support for them by extracting values from both Request and Response objects.

Tests
Added new unit tests (passing).

Verified with:
tox -e py312-test-instrumentation-botocore
tox -e spellcheck
tox -e lint-instrumentation-botocore
tox -e ruff

Backward Compatibility
This change is backward compatible. It only adds instrumentation for additional AWS resources and does not modify existing behavior in the auto-instrumentation library.

Note
This PR depends on #3736. Since #3736 has not yet been merged, its changes are included here as well.

* add changelog.

---------

Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
2025-09-10 12:20:05 +00:00
rads-1996 4db9772ccf
Fix for FASTAPI unable to record AppService URL (Issue #3654) (#3670)
* Fix for FASTAPI unable to record AppService URL

* Fixed tests and pylint errors

* Fixed ruff format

* Updated CHANGELOG

* Updated CHANGELOG

* Addressed feedback

* Checking CI runs

* Fix ruff and spellcheck errors

* Fix pytest

* Update CHANGELOG.md

* Update CHANGELOG.md

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

* Fix ruff

* Fix ruff

* Updated CHANGELOG

---------

Co-authored-by: Emídio Neto <9735060+emdneto@users.noreply.github.com>
Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
2025-09-10 12:12:34 +00:00
Marcelo Trylesinski b2c3c4ecf0
Don't pass bounded `server_request_hook` when using `FastAPIInstrumentor.instrument(server_request_hook=...)` (#3701)
* Don't pass bounded `server_request_hook` when using `FastAPIInstrumentor.instrument(server_request_hook=...)`

* try now

* changelog

Signed-off-by: emdneto <9735060+emdneto@users.noreply.github.com>

---------

Signed-off-by: emdneto <9735060+emdneto@users.noreply.github.com>
Co-authored-by: emdneto <9735060+emdneto@users.noreply.github.com>
2025-09-10 10:09:18 +02:00
Luke (GuangHui) Zhang edb34e6eab
botocore: upgrade moto package from 5.0.9 to 5.1.11 (#3736)
* botocore: upgrade moto package from 5.0.9 to 5.1.11

Moto 5.0.9, released in May 2024, lacks support for certain AWS resources such as Step Functions APIs. This PR upgrades moto to the latest release (5.1.11) to add these capabilities.

After the upgrade, one DynamoDB unit test failed. This PR also addresses that failure.

The unit test failures after upgrading moto from 5.0.9 to 5.1.11 happened due to two key improvements in moto's DynamoDB implementation:

1. Enhanced Parameter Validation
Before (moto 5.0.9): Moto had lenient validation and allowed invalid parameter combinations like Segment=21 with TotalSegments=17, even though this violates AWS DynamoDB's actual behavior.

After (moto 5.1.11): Moto added stricter validation that matches AWS DynamoDB's real behavior:

Segment parameter must be zero-based (0 to TotalSegments-1)

Segment=21 with TotalSegments=17 now correctly throws ValidationException

2. More Accurate Parallel Scan Simulation
Before (moto 5.0.9): Moto's parallel scan implementation was simplified and might have returned items regardless of which segment was being scanned, leading to predictable but incorrect behavior.

After (moto 5.1.11): Moto improved its parallel scan simulation to more accurately reflect how AWS DynamoDB distributes items across segments:

Items are distributed based on hash values of partition keys

Different segments contain different subsets of data

Segment 16 (out of 17 total) might legitimately contain 0 items if the hash distribution doesn't place any items there

Why This Matters
These changes make moto behave more like the actual AWS DynamoDB service, which is beneficial for testing because:

Tests catch invalid parameter usage that would fail in production

Tests reflect realistic data distribution patterns

Code is validated against more accurate AWS behavior

The test failures weren't bugs in the OpenTelemetry instrumentation code - they were issues with the test setup that became visible when moto started enforcing AWS's actual constraints and behavior patterns.

* add changelog.
2025-09-09 16:49:16 +00:00
Ezzio Moreira 67661d4b0b
refactor: semcov opentelemetry instrumentation aio pika (#3667)
* feat: refactor semcov opentelemetry-instrumentation

* fix: return shema senconv

* refactor: opentelemetry-instrumentation-aio-pika

* fix: revert unintended changes to _semconv.py

* fix: change schema

* fix: change schema

* fix: spanattribute messaging id

* fix: spanattribute messaging id

---------

Co-authored-by: Emídio Neto <9735060+emdneto@users.noreply.github.com>
2025-09-09 15:17:01 +00:00
Luke (GuangHui) Zhang 6525da4b3b
botocore: Add support for SNS semantic convention attribute aws.sns.topic.arn (#3734)
* botocore: Add support for SNS semantic convention attribute aws.sns.topic.arn

The AWS SNS semantic convention defines the attribute aws.sns.topic.arn:
https://github.com/open-telemetry/semantic-conventions/blob/main/docs/registry/attributes/aws.md#amazon-sns-attributes

Currently, this attribute is not set in the botocore instrumentation library.
This PR adds support for it by setting the attribute from both the request and response objects.

Tests
New unit tests added and passing.

Verified with:
tox -e py312-test-instrumentation-botocore
tox -e spellcheck
tox -e lint-instrumentation-botocore
tox -e ruff

Backward Compatibility
There is no risk of breaking existing functionality.
This change only adds instrumentation for an additional AWS resource without modifying the existing behavior of the auto-instrumentation library.

* add changelog.

---------

Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
2025-09-09 13:31:54 +00:00
Diogo Silva 5caf8c24e3
fix: Fix missing metric response attributes in HTTPX instrumentation (#3615)
* fix: Fix missing metric response attributes in HTTPX instrumentation when span not recording

* chore: add changelog

* feat: Add unit tests for old and new semconv

* fix: remove deprecated span attributes

* fix: add tests for both sem conv

* fix: add suggestions

* fix: fix unit tests

* Update CHANGELOG.md

---------

Co-authored-by: Emídio Neto <9735060+emdneto@users.noreply.github.com>
Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
2025-09-09 13:24:09 +00:00
DylanRussell 2ecc2d2404
Add `gen_ai_latest_experimental` to the Sem Conv stability flag. Add `ContentCapturingMode` enum (#3716)
* initial commit

* lint

* Fix tests

* Fix typecheck

* Update opentelemetry-instrumentation/src/opentelemetry/instrumentation/_semconv.py

Co-authored-by: Emídio Neto <9735060+emdneto@users.noreply.github.com>

* Update util/opentelemetry-util-genai/src/opentelemetry/util/genai/utils.py

Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>

* Use ValueError

* Rename enum

* Update util/opentelemetry-util-genai/tests/test_utils.py

Co-authored-by: Aaron Abbott <aaronabbott@google.com>

* Update util/opentelemetry-util-genai/tests/test_utils.py

Co-authored-by: Aaron Abbott <aaronabbott@google.com>

* Update util/opentelemetry-util-genai/tests/test_utils.py

Co-authored-by: Aaron Abbott <aaronabbott@google.com>

* Update util/opentelemetry-util-genai/tests/test_utils.py

Co-authored-by: Aaron Abbott <aaronabbott@google.com>

* Default env var to NO_CONTENT when invalid envvar

* Address comments

* Address comment

* Fix typecheck

* don't change typecheck,

* Fix linter

* Address comments

* Fix order of args..

---------

Co-authored-by: Emídio Neto <9735060+emdneto@users.noreply.github.com>
Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
Co-authored-by: Aaron Abbott <aaronabbott@google.com>
2025-09-04 18:10:05 -04:00
DylanRussell b1b9505043
Add shared Dataclass Types for GenAi instrumentations (#3718)
* Add GenAI Types

* ADd defaults

---------

Co-authored-by: Aaron Abbott <aaronabbott@google.com>
2025-09-04 20:42:20 +00:00
Tammy Baylis fd21563957
Fix ReadTheDocs headers and sections order for 8 Instrumentors (#3719)
* Fix readthedocs headers

* Changelog

* Add header
2025-08-29 16:45:53 -04:00
Mike Dearman 6393e84100
Fix to properly skip all tornado server telemetry when URL excluded (#3680)
* Fix `opentelemetry-instrumentation-tornado` server (request) duration metric calculation (#3486)

* Update changelog

* Fix to properly skip all tornado server telemetry when URL excluded.

* Linting
2025-08-29 18:57:22 +00:00
Riccardo Magliocchetti 5f0d4ff4ce
opentelemetry-instrumentation: teach opentelemetry-instrument about gevent (#3699)
* opentelemetry-instrumentation: teach opentelemetry-instrument about gevent

Introduce
OTEL_PYTHON_AUTO_INSTRUMENTATION_EXPERIMENTAL_GEVENT_PATCH=patch_all
environment variable that calls gevent monkey module patch_all method
before starting up the distro and sdk. The environment variable should
useful also for apps instrumented via the opentelemetry-operator.

The flag removes the following warning (and hang) when running locust:
$ opentelemetry-instrument locust
/lib/python3.10/site-packages/locust/__init__.py:16: MonkeyPatchWarning: Monkey-patching ssl after ssl has already been imported may lead to errors, including RecursionError on Python 3.6. It may also silently lead to incorrect behaviour on Python 3.7. Please monkey-patch earlier. See https://github.com/gevent/gevent/issues/1016. Modules that had direct imports (NOT patched): ['urllib3.util (/lib/python3.10/site-packages/urllib3/util/__init__.py)', 'urllib3.util.ssl_ (/lib/python3.10/site-packages/urllib3/util/ssl_.py)'].
  monkey.patch_all()

* Update CHANGELOG

* Please pylint

* Apply suggestions from code review

Co-authored-by: Tammy Baylis <96076570+tammy-baylis-swi@users.noreply.github.com>

* Move environment variable to proper module

---------

Co-authored-by: Tammy Baylis <96076570+tammy-baylis-swi@users.noreply.github.com>
2025-08-29 18:52:35 +00:00
François Voron 86d26ce1b8
starlette/fastapi: fix error on host-based routing (#3507)
* starlette/fastapi: fix error on host-based routing

Fix #3506

* Update CHANGELOG.md

* Update instrumentation/opentelemetry-instrumentation-starlette/tests/test_starlette_instrumentation.py

* Update CHANGELOG.md

---------

Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
Co-authored-by: Emídio Neto <9735060+emdneto@users.noreply.github.com>
2025-08-29 15:15:57 +00:00
Riccardo Magliocchetti e211bffc0a
opentelemetry-instrumentation-vertexai: ignore deprecation warnings (#3721)
Ignore deprecations warnings for GenAiSystemValues since the replacement
GenAiProviderNameValues is not available in any release yet.
2025-08-29 10:54:01 -04:00
OpenTelemetry Bot 51da0a766e
Add subscript to issue templates (#3669)
Co-authored-by: otelbot <197425009+otelbot@users.noreply.github.com>
2025-08-28 11:09:34 +00:00
Alexander Dorn c32b738b9b
Rewrite FastAPI instrumentor middleware stack to be failsafe (#3664)
* rewrite FastAPIInstrumentor:build_middleware_stack to become failsafe

* add test cases for FastAPI failsafe handling

* add CHANGELOG entry

* remove unused import

* [lint] don't return from failsafe wrapper

* [lint] allow broad exceptions

* [lint] more allowing

* record FastAPI hook exceptions in active span

* remove comment

* properly deal with hooks not being set

* add custom FastAPI exception recording

* move failsafe hook handling down to OpenTelemetryMiddleware

* shut up pylint

* optimize failsafe to check for `None` only once

* remove confusing comment and simplify wrapper logic

* add clarifying comment

* test proper exception / status code recording

* add HTTP status code check

* test HTTP status on the exception recording span

* improve test by removing TypeError

* rectify comment/explanation on inner middleware for exception handling

* minor typo

* move ExceptionHandlingMiddleware as the outermost inner middleware

Also improve code documentation and add another test.

* use distinct status code in test

* improve comemnt

Co-authored-by: Alex Hall <alex.mojaki@gmail.com>

* narrow down exception handling

Co-authored-by: Alex Hall <alex.mojaki@gmail.com>

* narrow down FastAPI exception tests to relevant spans

* collapse tests, more narrow exceptions

* move failsafe hook tests to ASGI test suite

* update CHANGELOG

* satisfy linter

* don't record exception if span is not recording

* add test for unhappy instrumentation codepath

* make inject fixtures private

* give up and shut up pylint

* improve instrumentation failure error message and add test

---------

Co-authored-by: Alex Hall <alex.mojaki@gmail.com>
2025-08-28 10:38:41 +00:00
Liudmila Molkova 60b903578c
OpenAI update examples: enable metrics and update versions (#3711)
* Update versions and enabled metrics in openai examples

* up

* lint

* Update instrumentation-genai/opentelemetry-instrumentation-openai-v2/examples/manual/.env

* Update instrumentation-genai/opentelemetry-instrumentation-openai-v2/examples/manual/.env

* Update instrumentation-genai/opentelemetry-instrumentation-openai-v2/examples/manual/.env
2025-08-28 12:30:45 +02:00
Jonathan Lee 032d6c67be
AWS X-Ray Remote Sampler Part 1 - Initial Classes and Rules Poller Implementation (#3366)
* remote sampling - initial classes and rules poller

* run generate-workflows and ruff

* add component owner for aws sampler, run lint

* move sampler into aws sdk-extensions

* move sampler tests to trace dir, update otel api/sdk deps, update changelog

* move mock_clock into tests dir

* update component owners for sdk-extension-aws

* ruff and lint

* address comments

* make sampler implementation internal until completion, update tests to not make http requests

* remove use of Optional, restore README of the package

* remove unused clock and client_id

* Update component_owners.yml

* Update CHANGELOG.md

---------

Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
2025-08-25 14:57:48 +02:00
David Gang 973d10d218
`opentelemetry-instrumentation-system-metrics`: Add `cpython.gc.collected_objects` and `cpython.gc.uncollectable_objects` metrics (#3666)
* `opentelemetry-instrumentation-system-metrics`: Add `cpython.gc.collected_objects` and `cpython.gc.uncollectable_objects` metrics

* Update __init__.py

* Update CHANGELOG.md

---------

Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
Co-authored-by: Emídio Neto <9735060+emdneto@users.noreply.github.com>
2025-08-23 13:15:31 +00:00
Artem Ziborev 5fa222f005
fix: fastapi memory leak only (#3688)
* fix(fastapi-instrumentation): properly remove app from instrumented list to avoid memory leaks

* fix(fastapi-instrumentation): fix tests and finalize memory leak fix

* docs(changelog): add FastAPI uninstrument memory leak fix with PR references (#3683)

* test(fastapi): add GC-based app collection test; refactor tracking to WeakSet and safe discard

* docs(changelog): reference FastAPI memory leak fix PR (#3688)

* refactor(fastapi): drop __del__ as WeakSet handles cleanup

* chore(fastapi): formatting after ruff auto-fix

* chore(test-fastapi): ruff import order

* Update comment to clarify purpose of removing app from WeakSet

* fix: codereview comments

* 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>
2025-08-23 15:08:16 +02:00
Mike Dearman 3567a03a0e
Fix tornado server (request) duration metric calculation (#3679)
* Fix `opentelemetry-instrumentation-tornado` server (request) duration metric calculation (#3486)

* Update changelog

* Linting

* Add tornado metrics test_metrics_concurrent_requests test

* Fix tornado test ms to sec conversion

---------

Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
2025-08-22 15:11:44 +00:00
Gershon Papi c6b14fcd4d
feat: Update opentelemetry-instrumentation-confluent-kafka to support confluent-kafka <=2.11.0 (#3685)
* feat: Update opentelemetry-instrumentation-confluent-kafka to support confluent-kafka <=2.11.0

* changelog

* cr

* fixes + uv lock
2025-08-22 15:06:45 +00:00
Aaron Abbott 8c3bf3e497
Add @dylanrussell to contrib approvers (#3697) 2025-08-18 14:31:01 -04:00
Aaron Abbott cc6f467aea
Move @shalevr to Emeritus (#3698)
* Move @shalevr to Emeritus

* Update README.md

Co-authored-by: Emídio Neto <9735060+emdneto@users.noreply.github.com>

---------

Co-authored-by: Emídio Neto <9735060+emdneto@users.noreply.github.com>
2025-08-18 11:59:42 -04:00
Andre Murbach Maidl f11f03ce6e
Avoid calls to context.detach with None token (#3673)
* fixes open-telemetry/opentelemetry-python-contrib#3351

* Add changelog entry about open-telemetry/opentelemetry-python-contrib#3673

---------

Co-authored-by: Emídio Neto <9735060+emdneto@users.noreply.github.com>
Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
2025-08-18 12:39:16 +00:00
Keith Decker bbcdf8b737
GenAI Utils Structure (#3672)
* GenAI SDK Structure

* generate bootstrap entry

* Rename GenAI SDK to GenAI Utils

* remove duplicate dependency

* update uv lock

* generate tox doc

* remove sdk dependency, remove bootstrap entry

* ran tox generate and uv sync

* move package out of instrumentation folder

* remove package file

* rename package to align with other util package

* add tox boilerplate

* tox boilerplate

* Fix pytest version

* Corrected RST Link
2025-08-14 22:33:26 -04:00
Islam Sharabash 29dfd569fd
Fix tracing of async cursors for psycopg (#3324)
* Fix tracing of async cursors for psycopg

This copies the traced_execution of AsyncCursorTracer except
query_method is awaited within the span.

Fixes https://github.com/open-telemetry/opentelemetry-python-contrib/issues/2486

* Adding a regression test for asynccursor bug

Adds a test to check that the async tracer is actually awaiting
cursor.execute.

On my machine, with the bug present, the duration is 14000ns. With the
bug patched the the duration is orders of magnitude larger.

* Make return type of query_method an awaitable

* Move implementation to traced_execution_async

---------

Co-authored-by: Aaron Abbott <aaronabbott@google.com>
2025-08-13 14:14:11 +00:00
Ezzio Moreira aa0579d1f0
refactor: semcov opentelemetry-instrumentation/src/opentelemetry/instrumentation/_semconv.py (#3613)
* feat: refactor semcov opentelemetry-instrumentation

* fix: return shema senconv

* fix: change schema

---------

Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
2025-08-11 13:28:47 +00:00
Emídio Neto a5184dc53c
Add statement encouraging contributors to review PRs (#3686)
* Add statement encouraging contributors to review PRs

* Update CONTRIBUTING.md
2025-08-11 15:21:23 +02:00
Keith Decker 74536f1a92
Add Weaviate Instrumentation Structure (#3646)
* Initial structure

* Update scripts/generate_instrumentation_bootstrap.py

Co-authored-by: Pablo Collins <pablo.collins@gmail.com>

* missing generated library

* Version update to offset traceloop implementation

* uv sync after rebase

* Missing release entries

---------

Co-authored-by: Pablo Collins <pablo.collins@gmail.com>
2025-08-04 12:36:10 -04:00
David Gang d2d136dafd
Update garbage collection metrics to use get_stats to align with semconv (#3661) 2025-07-30 18:44:24 +02:00
David Gang 9bf77b5ef0
add gc_count metrics with correct collection unit . (#3617)
fixes #3549

Co-authored-by: Emídio Neto <9735060+emdneto@users.noreply.github.com>
Co-authored-by: Aaron Abbott <aaronabbott@google.com>
2025-07-29 17:15:36 -04:00
otelbot[bot] 76509d7053
Update version to 1.37.0.dev/0.58b0.dev (#3658) 2025-07-29 07:50:20 -08:00
Ezzio Moreira fc442d1e01
feat(starlette): stop using SpanAttributes (#3655)
Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
2025-07-28 14:27:44 +00:00
Joe McGinley a39c6c166d
Fix git pull error in core contrib test (#3357)
* Fix git pull error in core contrib test

Core contrib is intermittently failing when
pulling the core repo because tox does not
retry on failure.

Add gh actions/checkout for the core repo
before running tox to mitigate this.

* generate-workflows

Signed-off-by: emdneto <9735060+emdneto@users.noreply.github.com>

* Update CHANGELOG.md

---------

Signed-off-by: emdneto <9735060+emdneto@users.noreply.github.com>
Co-authored-by: emdneto <9735060+emdneto@users.noreply.github.com>
Co-authored-by: Leighton Chen <lechen@microsoft.com>
2025-07-28 16:23:13 +02:00
nikkie d74291d0e0
Fix typo (#3656) 2025-07-28 08:15:32 +00:00
wrisa 80d5ba1f40
Start supporting langchain instrumentation (#3600)
* Added base files for the project

* Added fix for generate and pre-commit

* Added package.py

* tox generate changes to auto-generated files

* tox ruff reformatted file

* removed python 3.8 from classifiers

* addressed comments

* addressed aabmass's comments
2025-07-25 14:41:27 -04:00
OpenTelemetry Bot bca482609b
Add minimum token permissions for all github workflow files (#3604) 2025-07-24 07:33:31 -08:00
OpenTelemetry Bot c30b8fa9a5
Migrate from opentelemetrybot to otelbot (#3641) 2025-07-23 09:02:44 -08:00
Jeremy Voss 77f3171bd4
Add "instruments-any" feature: unblock multi-target instrumentations while fixing dependency conflict breakage. (#3610) 2025-07-21 08:24:50 -08:00
Ezzio Moreira f20fa77ad5
refactor: opentelemetry-instrumentation-urllib (#3639)
Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
2025-07-16 08:11:46 +00:00