github DataDog/dd-trace-py v1.13.0
1.13.0

latest releases: v2.17.0rc1, v2.16.1, v2.14.7...
18 months ago

New Features

  • OpenAI: Add integration with support for metrics, logs and traces from OpenAI requests. See the docs for more information.

  • psycopg: This release adds support for the new psycopg3 package. This new integration has all the same tracing functionality as the previous psycopg2-binary package, with added support for new methods including async connection and async cursor classes. The release also adds support for using Django>=4.2 with psycopg3 integrated tracing.

Bug Fixes

  • appsec: Fixes an encoding error when we are unable to cleanup the AppSec request context associated with a span.

  • django: Fixed a bug that prevented a Django application from starting with celery and gevent workers if DJANGO_SETTINGS_MODULE was not explicitly set.

  • tracing: Fixes a cryptic encoding exception message when a span tag is not a string.

  • django: Adds catch to guard against a ValueError, AttributeError, or NotImplementedError from being thrown when evaluating a django cache result for db.row_count tag.

  • elasticsearch: This fix resolves an issue where the tracer would throw an error when patching unsupported versions of elasticsearch (> 8.0). Patching is now skipped if an unsupported version is detected.- bootstrap: fixed an issue with the behavior of ddtrace.auto that could have caused incompatibilities with frameworks such as gevent when used as a programmatic alternative to the ddtrace-run command.

  • ASM: fix extract_body for Django such that users of Django Rest Framework can still use custom parsers.

  • flask: Remove patching for Flask hooks app.before_first_request and bp.before_app_first_request if Flask version >= 2.3.0.

  • gevent: Fix a bug that caused traceback objects to fail to pickle when using gevent.

  • profiler: Fixed a bug that caused segmentation faults in applications that use protobuf as a runtime dependency.

  • redis: Resolves an issue where the aioredis/aredis/yaaredis integrations cross-imported a helper method from the redis integration, which triggered redis patching before the redis integration was fully loaded.

  • profiler: Fix support for latest versions of protobuf.

  • algoliasearch: This fix resolves an issue where non-text search query arguments caused Type Errors when being added as tags.

  • ASM: fix calling set_user without a created span raising a ValueError.

  • django: Adds fix for bug where Django cache return object throws an error if it does not implement __bool__().

  • kafka: Previously instantiating a subclass of kafka's Producer/Consumer classes would result in attribute errors due to patching the Producer/Consumer classes with an ObjectProxy. This fix resolves this issue by making the traced classes directly inherit from kafka's base Producer/Consumer classes.

  • profiling: Fixed a regression in the memory collector that caused it to fail to cleanly re-initialize after a fork, causing error messages to be logged.

  • logging: Ensure that the logging module can report thread information, such as thread names, correctly when a framework like gevent is used that requires modules cleanup.

  • ASM: This fix resolves an issue where path parameters for the Flask framework were handled at response time instead of at request time for suspicious request blocking. This close a known issue opened in 1.10.0.

  • lib-injection: Switch installation to install from included wheels. Prior,
    the wheels were merged together which caused conflicts between versions of dependencies based on Python version.

  • tracer: Handle exceptions besides ImportError when integrations are loaded.

Other Changes

  • ASM: Add information about Application Security config values on ddtrace-run --info.
  • otel: Fixes code formatting in api docs

Don't miss a new dd-trace-py release

NewReleases is sending notifications on new releases.