Skip to content

Releases: open-telemetry/opentelemetry-python-contrib

Version 1.29.0/0.50b0

11 Dec 17:06
2480f4e
Compare
Choose a tag to compare

Added

  • opentelemetry-instrumentation-starlette Add type hints to the instrumentation (#3045)
  • opentelemetry-distro default to OTLP log exporter. (#3042)
  • opentelemetry-instrumentation-sqlalchemy Update unit tests to run with SQLALchemy 2 (#2976)
  • Add opentelemetry-instrumentation-openai-v2 to opentelemetry-bootstrap (#2996)
  • opentelemetry-instrumentation-sqlalchemy Add sqlcomment to db.statement attribute (#2937)
  • opentelemetry-instrumentation-dbapi Add sqlcomment to db.statement attribute (#2935)
  • opentelemetry-instrumentation-dbapi instrument_connection accepts optional connect_module (#3027)
  • opentelemetry-instrumentation-mysqlclient Add sqlcommenter support (#2941)
  • opentelemetry-instrumentation-pymysql Add sqlcommenter support (#2942)
  • opentelemetry-instrumentation-click: new instrumentation to trace click commands (#2994)

Fixed

  • opentelemetry-instrumentation-starlette: Retrieve meter_provider key instead of _meter_provider on _instrument (#3048)
  • opentelemetry-instrumentation-httpx: instrument_client is a static method again (#3003)
  • opentelemetry-instrumentation-system_metrics: fix callbacks reading wrong config (#3025)
  • opentelemetry-instrumentation-httpx: Check if mount transport is none before wrap it (#3022)
  • Replace all instrumentor unit test assertEqualSpanInstrumentationInfo calls with assertEqualSpanInstrumentationScope calls (#3037)
  • opentelemetry-instrumentation-sqlalchemy Fixes engines from sqlalchemy.engine_from_config not being fully instrumented (#2816)
  • opentelemetry-instrumentation-sqlalchemy: Fix a remaining memory leak in EngineTracer (#3053)
  • opentelemetry-instrumentation-sqlite3: Update documentation on explicit cursor support of tracing (#3088)

Breaking changes

  • opentelemetry-instrumentation-sqlalchemy teach instruments version (#2971)
  • Drop opentelemetry-instrumentation-test package from default instrumentation list (#2969)
  • opentelemetry-instrumentation-httpx: remove private unused _InstrumentedClient and _InstrumentedAsyncClient classes (#3036)

Version 1.28.2/0.49b2

18 Nov 18:40
54e684a
Compare
Choose a tag to compare

This is a patch release on the previous 1.28.1/0.49b1 release, fixing the issue(s) below.

Added

  • Add opentelemetry-instrumentation-openai-v2 to opentelemetry-bootstrap (#2996)

Fixed

  • opentelemetry-instrumentation-httpx: instrument_client is a static method again (#3003)

Breaking changes

Version 1.28.1/0.49b1

08 Nov 19:33
ec1c9ea
Compare
Choose a tag to compare

This is a patch release on the previous 1.28.0/0.49b0 release, fixing the issue(s) below.

Added

  • opentelemetry-instrumentation-sqlalchemy Update unit tests to run with SQLALchemy 2 (#2976)

Fixed

Breaking changes

  • opentelemetry-instrumentation-sqlalchemy teach instruments version (#2971)
  • Drop opentelemetry-instrumentation-test package from default instrumentation list (#2969)

opentelemetry-instrumentation-openai-v2 2.0b0

08 Nov 00:37
3a21b9d
Compare
Choose a tag to compare
  • Use generic OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT environment variable to control if content of prompt, completion, and other messages is captured. (#2947)

  • Update OpenAI instrumentation to Semantic Conventions v1.28.0: add new attributes and switch prompts and completions to log-based events. (#2925)

  • Initial OpenAI instrumentation (#2759)

Version 1.28.0/0.49b0

05 Nov 19:22
a4dfeac
Compare
Choose a tag to compare

Added

  • opentelemetry-instrumentation-openai-v2 Instrumentation for OpenAI >= 0.27.0 (#2759)
  • opentelemetry-instrumentation-fastapi Add autoinstrumentation mechanism tests. (#2860)
  • opentelemetry-instrumentation-aiokafka Add instrumentor and auto instrumentation support for aiokafka (#2082)
  • opentelemetry-instrumentation-redis Add additional attributes for methods create_index and search, rename those spans (#2635)
  • opentelemetry-instrumentation Add support for string based dotted module paths in unwrap (#2919)

Fixed

  • opentelemetry-instrumentation-aiokafka Wrap AIOKafkaConsumer.getone() instead of AIOKafkaConsumer.__anext__ (#2874)
  • opentelemetry-instrumentation-confluent-kafka Fix to allow topic to be extracted from kwargs in produce() ([#2901])(#2901)
  • opentelemetry-instrumentation-system-metrics Update metric units to conform to UCUM conventions. (#2922)
  • opentelemetry-instrumentation-celery Don't detach context without a None token (#2927)
  • opentelemetry-exporter-prometheus-remote-write: sort labels before exporting (#2940)
  • opentelemetry-instrumentation-dbapi sqlcommenter key values created from PostgreSQL, MySQL systems (#2897)
  • opentelemetry-instrumentation-system-metrics: don't report open file descriptors on Windows (#2946)

Breaking changes

  • Deprecation of pkg_resource in favor of importlib.metadata (#2871)
  • opentelemetry-instrumentation Don't fail distro loading if instrumentor raises ImportError, instead skip them (#2923)
  • opentelemetry-instrumentation-httpx Rewrote instrumentation to use wrapt instead of subclassing (#2909)

Version 1.27.0/0.48b0

28 Aug 21:28
dcbf1fd
Compare
Choose a tag to compare

Added

  • opentelemetry-instrumentation-kafka-python Instrument temporary fork, kafka-python-ng inside kafka-python's instrumentation (#2537)

Breaking changes

  • opentelemetry-bootstrap Remove opentelemetry-instrumentation-aws-lambda from the defaults instrumentations (#2786)

Fixed

  • opentelemetry-instrumentation-httpx fix handling of async hooks (#2823)
  • opentelemetry-instrumentation-system-metrics fix process.runtime.cpu.utilization values to be shown in range of 0 to 1 (#2812)
  • opentelemetry-instrumentation-fastapi fix fastapi auto-instrumentation by removing fastapi-slim support, fastapi-slim itself is discontinued from maintainers (#2783)
  • opentelemetry-instrumentation-aws-lambda Avoid exception when a handler is not present. (#2750)
  • opentelemetry-instrumentation-django Fix regression - http.target re-added back to old semconv duration metrics (#2746)
  • opentelemetry-instrumentation-asgi do not set url.full attribute for server spans (#2735)
  • opentelemetry-instrumentation-grpc Fixes the issue with the gRPC instrumentation not working with the 1.63.0 and higher version of gRPC (#2483)
  • opentelemetry-instrumentation-aws-lambda Fixing w3c baggage support (#2589)
  • opentelemetry-instrumentation-celery propagates baggage (#2385)
  • opentelemetry-instrumentation-asyncio Fixes async generator coroutines not being awaited (#2792)
  • opentelemetry-instrumentation-tornado Handle http client exception and record exception info into span (#2563)
  • opentelemetry-instrumentation fix http.host new http semantic convention mapping to depend on kind of span (#2814)

Version 1.26.0/0.47b0

25 Jul 03:26
44098b9
Compare
Choose a tag to compare

Added

  • opentelemetry-instrumentation-flask Add http.route and http.target to metric attributes (#2621)
  • opentelemetry-instrumentation-aws-lambda Enable global propagator for AWS instrumentation (#2708)
  • opentelemetry-instrumentation-sklearn Deprecated the sklearn instrumentation (#2708)
  • opentelemetry-instrumentation-pyramid Record exceptions raised when serving a request (#2622)
  • opentelemetry-sdk-extension-aws Add AwsXrayLambdaPropagator (#2573)
  • opentelemetry-instrumentation-confluent-kafka Add support for version 2.4.0 of confluent_kafka (#2616)
  • opentelemetry-instrumentation-asyncpg Add instrumentation to cursor based queries (#2501)
  • opentelemetry-instrumentation-confluent-kafka Add support for produce purge (#2638)
  • opentelemetry-instrumentation-asgi Implement new semantic convention opt-in with stable http semantic conventions (#2610)
  • opentelemetry-instrumentation-fastapi Implement new semantic convention opt-in with stable http semantic conventions (#2682)
  • opentelemetry-instrumentation-httpx Implement new semantic convention opt-in migration with stable http semantic conventions (#2631)
  • opentelemetry-instrumentation-system-metrics Permit to use psutil 6.0+. (#2630)
  • opentelemetry-instrumentation-system-metrics Add support for capture open file descriptors (#2652)
  • opentelemetry-instrumentation-httpx Add support for instrument client with proxy (#2664)
  • opentelemetry-instrumentation-aiohttp-client Implement new semantic convention opt-in migration (#2673)
  • opentelemetry-instrumentation-django Add http.target to Django duration metric attributes (#2624)
  • opentelemetry-instrumentation-urllib3 Implement new semantic convention opt-in migration (#2715)
  • opentelemetry-instrumentation-django Implement new semantic convention opt-in with stable http semantic conventions (#2714)

Breaking changes

  • opentelemetry-instrumentation-asgi, opentelemetry-instrumentation-fastapi, opentelemetry-instrumentation-starlette Use tracer and meter of originating components instead of one from asgi middleware (#2580)
  • Populate {method} as HTTP on _OTHER methods from scope for asgi middleware (#2610)
  • Populate {method} as HTTP on _OTHER methods from scope for fastapi middleware (#2682)
  • opentelemetry-instrumentation-urllib3 Populate {method} as HTTP on _OTHER methods for span name (#2715)
  • Populate {method} as HTTP on _OTHER methods from scope for fastapi instrumentation (#2682)
  • Populate {method} as HTTP on _OTHER methods from scope for django middleware (#2714)
  • opentelemetry-instrumentation-httpx, opentelemetry-instrumentation-aiohttp-client, opentelemetry-instrumentation-requests Populate {method} as HTTP on _OTHER methods (#2726)
  • opentelemetry-instrumentation-fastapi Add dependency support for fastapi-slim (#2702)

Fixed

  • Handle redis.exceptions.WatchError as a non-error event in redis instrumentation (#2668)
  • opentelemetry-instrumentation-httpx Ensure httpx.get or httpx.request like methods are instrumented (#2538)
  • Add Python 3.12 support (#2572)
  • opentelemetry-instrumentation-aiohttp-server, opentelemetry-instrumentation-httpx Ensure consistently use of suppress_instrumentation utils (#2590)
  • Reference symbols from generated semantic conventions (#2611)
  • opentelemetry-instrumentation-psycopg Bugfix: Handle empty statement. (#2644)
  • opentelemetry-instrumentation-confluent-kafka Confluent Kafka: Ensure consume span is ended when consumer is closed (#2640)
  • opentelemetry-instrumentation-asgi Fix generation of http.target and http.url attributes for ASGI apps using sub apps (#2477)
  • opentelemetry-instrumentation-aws-lambda Bugfix: AWS Lambda event source key incorrect for SNS in instrumentation library. (#2612)
  • opentelemetry-instrumentation-asyncio instrumented asyncio.wait_for properly raises asyncio.TimeoutError as expected (#2637)
  • opentelemetry-instrumentation-django Handle exceptions from request/response hooks (#2153)
  • opentelemetry-instrumentation-asgi Removed NET_HOST_NAME AND NET_HOST_PORT from active requests count attribute (#2610)
  • opentelemetry-instrumentation-asgi Bugfix: Middleware did not set status code attribute on duration metrics for non-recording spans. (#2627)

Version 1.25.0/0.46b0

31 May 16:18
38146dd
Compare
Choose a tag to compare

Breaking changes

  • Add return statement to Confluent kafka Producer poll() and flush() calls when instrumented by ConfluentKafkaInstrumentor().instrument_producer() (#2527)
  • Rename type attribute to asgi.event.type in opentelemetry-instrumentation-asgi (#2300)
  • Rename AwsLambdaInstrumentor span attributes faas.id to cloud.resource_id, faas.execution to faas.invocation_id (#2372)
  • Drop support for instrumenting elasticsearch client < 6` (#2422)
  • opentelemetry-instrumentation-wsgi Add http.method to span.name (#2425)
  • opentelemetry-instrumentation-flask Add http.method to span.name (#2454)

Added

  • opentelemetry-sdk-extension-aws Register AWS resource detectors under the opentelemetry_resource_detector entry point (#2382)
  • opentelemetry-instrumentation-wsgi Implement new semantic convention opt-in with stable http semantic conventions (#2425)
  • opentelemetry-instrumentation-flask Implement new semantic convention opt-in with stable http semantic conventions (#2454)
  • opentelemetry-instrumentation-threading Initial release for threading (#2253)
  • opentelemetry-instrumentation-pika Instrumentation for channel.consume() (supported only for global, non channel specific instrumentation) (#2397))
  • opentelemetry-processor-baggage Initial release (#2436)
  • opentelemetry-processor-baggage Add baggage key predicate (#2535)

Fixed

  • opentelemetry-instrumentation-dbapi Fix compatibility with Psycopg3 to extract libpq build version (#2500)[https://github.com//pull/2500]
  • opentelemetry-instrumentation-grpc AioClientInterceptor should propagate with a Metadata object (#2363)
  • opentelemetry-instrumentation-boto3sqs Instrument Session and resource (#2161)
  • opentelemetry-instrumentation-aws-lambda Fix exception handling for events with requestContext (#2418)
  • Use sqlalchemy version in sqlalchemy commenter instead of opentelemetry library version (#2404)
  • opentelemetry-instrumentation-asyncio Check for cancelledException in the future (#2461)
  • Remove SDK dependency from opentelemetry-instrumentation-grpc (#2474)
  • opentelemetry-instrumentation-elasticsearch Improved support for version 8 (#2420)
  • opentelemetry-instrumentation-elasticsearch Disabling instrumentation with native OTel support enabled (#2524)
  • opentelemetry-instrumentation-asyncio Check for name attribute in the coroutine (#2521)
  • opentelemetry-instrumentation-requests Fix wrong time unit for duration histogram (#2553)
  • opentelemetry-util-http Preserve brackets around literal IPv6 hosts (#2552)
  • opentelemetry-util-redis Fix net peer attribute for unix socket connection (#2493)

Version 1.24.0/0.45b0

28 Mar 19:31
f431b07
Compare
Choose a tag to compare
  • opentelemetry-instrumentation-psycopg Async Instrumentation for psycopg 3.x (#2146)

Fixed

  • opentelemetry-instrumentation-celery Allow Celery instrumentation to be installed multiple times (#2342)
  • Align gRPC span status codes to OTEL specification (#1756)
  • opentelemetry-instrumentation-flask Add importlib metadata default for deprecation warning flask version (#2297)
  • Ensure all http.server.duration metrics have the same description (#2151)
  • Fix regression in httpx request.url not being of type httpx.URL after 0.44b0 (#2359)
  • Avoid losing repeated HTTP headers (#2266)
  • opentelemetry-instrumentation-elasticsearch Don't send bulk request body as db statement (#2355)
  • AwsLambdaInstrumentor sets cloud.account.id span attribute (#2367)

Version 1.23.0/0.44b0

23 Feb 17:50
Compare
Choose a tag to compare
  • Drop support for 3.7 (#2151)
  • opentelemetry-resource-detector-azure Added 10s timeout to VM Resource Detector (#2119)
  • opentelemetry-instrumentation-asyncpg Allow AsyncPGInstrumentor to be instantiated multiple times (#1791)
  • opentelemetry-instrumentation-confluent-kafka Add support for higher versions until 2.3.0 of confluent_kafka (#2132)
  • opentelemetry-resource-detector-azure Changed timeout to 4 seconds due to timeout bug (#2136)
  • opentelemetry-resource-detector-azure Suppress instrumentation for urllib call (#2178)
  • AwsLambdaInstrumentor handles and re-raises function exception (#2245)