pypi ddtrace 1.8.0

latest releases: 2.12.2, 2.11.6, 2.11.5...
19 months ago

Upgrade Notes

  • ASM: libddwaf upgraded to version 1.6.1 using a new library loading mechanism
  • profiling: upgrades the profiler to support the v2.4 backend API for profile uploads, using a new request format.

Deprecation Notes

  • DD_REMOTECONFIG_POLL_SECONDS environment variable is deprecated and will be removed in v2.0. Please use DD_REMOTE_CONFIG_POLL_INTERVAL_SECONDS instead.

Known Issues

  • profiling: There is currently a known performance regression issue with the profiler's code provenance feature. Note that this feature is disabled by default and will only be enabled if DD_PROFILING_ENABLE_CODE_PROVENANCE is set to true.
  • remote config: There is a known issue with remote configuration management (RCM) when paired with gevent which can cause child processes to deadlock. If you are experiencing issues, we recommend disabling RCM with DD_REMOTE_CONFIGURATION_ENABLED=false. Note, this will disable one click activation for ASM.

New Features

  • CI Visibility: Add support for CI provider buddy.works
  • The component tag has been added for all auto-instrumented spans. The value of the component tag is equal to the name of the integration that produced the span.
  • tracing: Adds support for IPv6 agent hostnames for DD_AGENT_HOST.
  • elasticsearch: Update elasticsearch integration to add support for opensearch-py. See the elasticsearch documentation for more information.
  • ASM: one click activation enabled by default using Remote Configuration Management (RCM). Set DD_REMOTE_CONFIGURATION_ENABLED=false to disable this feature.
  • ASM: New Application Security Events Tracking API, starting with the functions track_user_login_success_event and
    track_user_login_failure_event for tracking user logins (it will also internally call set_user) and track_custom_event for any custom events. You can find these functions in the ddtrace.appsec.trace_utils module. Calling these functions will create new tags under the appsec.events namespace (appsec.events.user.login for logins) allowing you to track these events with Datadog. In the future this will be used to provide protection against account takeover attacks (ATO). Public documentation will be online soon.
  • celery: Enhances context tags containing dictionaries so that their contents are sent as individual tags (issue #4771).
  • tornado: Support custom error codes: https://ddtrace.readthedocs.io/en/stable/advanced_usage.html#custom-error-codes.
  • CI Visibility: Support reliably linking tests to the pipeline that executed them.
  • tracing: Add support for enabling collecting of HTTP request client IP addresses as the http.client_ip span tag. You can set the DD_TRACE_CLIENT_IP_ENABLED environment variable to true to enable. This feature is disabled by default.

Bug Fixes

  • This fix improves a cryptic error message encountered during some pip install ddtrace runs under pip versions <18.
  • dynamic instrumentation: remove unnecessary log line from application start up
  • This fix removes unintended url parts in the http.url tag.
  • botocore: Before this change, the botocore integration stripped newlines from the JSON string encoded in the data blob of Amazon Kinesis records. This change includes a terminating newline if it is present in the decoded data.
  • profiling: This fix resolves an issue in Python 3.11 where a PyFrameObject strong reference count was not properly decremented in the stack collector.
  • telemetry: This fix resolves an issue when we try to fetch platform.libc_ver() on an unsupported system.
  • Fix for ValueError when @ is not present in network location but other part of the url.
  • remote config: ensure proper validation of responses from the agent.
  • pylons: This fix resolves an issue where str.decode could cause critical unicode decode errors when ASM is enabled. ASM is disabled by default.
  • profiler: Handles potential AttributeErrors which would arise while collecting frames during stack unwinding in Python 3.11.
  • lib-injection: Use package versions published to PyPI to install the
    library. Formerly the published image was installing the package from source using the tagged commit SHA which resulted in slow and potentially failing installs.

Other Changes

  • profiler: CPU overhead reduction.

Don't miss a new ddtrace release

NewReleases is sending notifications on new releases.