Releases: DataDog/dd-trace-py
Releases · DataDog/dd-trace-py
2.21.9
Bug Fixes
- CI Visibility:
- Resolved an issue where the
CODEOWNERSfile of the project being tested was looked up in the current working directory rather than the repository root.
- Resolved an issue where the
- Dynamic Instrumentation:
- Fixed an issue with a GC-based lookup for code origin resolution resulting in high performance overhead.
- Kafka:
- Fixed an issue where a producer or consumer initialized with an unpacked config resulted in
TypeError, causing a failed connection.confluent-kafkasupports both unpacked and packed config; this change allows initialization with either.
- Fixed an issue where a producer or consumer initialized with an unpacked config resulted in
- Profiling:
- Fixed an issue in the
SynchronizedSamplePoolwhere pool could be null when calling intoddog_ArrayQueue_functions, leading to segfaults in the uWSGI shutdown
- Fixed an issue in the
- Tracing:
- Fixed a bug in the sampling rule matcher where the pattern
?*was not being matched correctly forDD_TRACE_SAMPLING_RULEStags, due to it matching on spans with no tag matching the specified key.
- Fixed a bug in the sampling rule matcher where the pattern
3.8.1
Bug Fixes
- CI Visibility:
- Fix resolves an issue where running from a GitHub
action triggered on a tag push would cause the branch name to be null,
causing errors when fetching Test Optimization settings from the
backend.
- Fix resolves an issue where running from a GitHub
- Dynamic Instrumentation:
- Fix an issue where only module scopes were
being uploaded, preventing method probes from being created.
- Fix an issue where only module scopes were
3.8.0
New Features
- LLM Observability: add processor capability to process span inputs and outputs. See usage documentation here.
- CI Visibility: This introduces the ability to gzip the payload when using the evp proxy setup, incurring in less network bandwith consumption.
- Error Tracking: Introduces automatic reporting of handled exceptions. Enabling the feature will report handled exceptions to Error Tracking from the user code, the third party packages code, some specified modules or everything based on configuration. This feature can be controlled using two environment variables:
DD_ERROR_TRACKING_HANDLED_ERRORS=allthird_partyDD_ERROR_TRACKING_HANDLED_ERRORS_INCLUDE=module1, module2, module3.submodule
- Code Security: IAST support for langchain v0.1.0 and above.
- openai: This introduces tracing support for the OpenAI Responses endpoint.
Bug Fixes
-
tracing
- Fixes an issue where truncation of span attributes longer than 25000 characters would not consistently count the size of UTF-8 multibyte characters, leading to a
unicode string is too largeerror. - Fixes a bug in distributed tracing where pickling
ddtrace.trace.Contextfails in coroutines. This regression was introduced in v3.7.0.
- Fixes an issue where truncation of span attributes longer than 25000 characters would not consistently count the size of UTF-8 multibyte characters, leading to a
-
CI Visibility
- This fix resolves an issue where the
DD_CIVISIBILITY_ITR_ENABLEDwas not honored properly. - This fix resolves an issue where pytest-xdist would not exit with the proper status code if ATR was enabled.
- This fix resolves an issue where ddtrace pytest plugin used with xdist would report test suites as failing even when all tests pass.
- This fix resolves an issue where the
-
profiling
- fixed an issue in the
SynchronizedSamplePoolwhere pool could be null when calling intoddog_ArrayQueue_functions, leading to segfaults in the uWSGI shutdown - improve performance of the memory profiler for large heaps. The memory profiler previously did a linear search of tracked allocations for every free, which scaled very poorly with large heaps. Switch to a fast hash map.
- fixed an issue in the
-
Code Security
- IAST
- Avoid excessive filtering of stacktrace locations when finding vulnerabilities. After this change, vulnerabilities that were previously discarded will now be reported. In particular, if they were found within code in site-packages or outside of the working directory.
- IAST
-
LLM Observability
- Resolves an issue where spans and evaluation metrics were not being sent via Unix sockets.
-
dynamic instrumentation
- prevent an exception when trying to remove a probe that did not resolve to a valid source code location.
-
kafka
- This fix resolves an issue where message headers were sent to Kafka brokers that do not support them. Message headers are turned off when the Kafka server responds with
UNKNOWN_SERVER_ERROR (-1).
- This fix resolves an issue where message headers were sent to Kafka brokers that do not support them. Message headers are turned off when the Kafka server responds with
-
code origin for spans
- fixes a performance issue with exit spans.
3.8.0rc3
New Features
- LLM Observability: add processor capability to process span inputs and outputs. See usage documentation [here](https://docs.datadoghq.com/llm_observability/setup/sdk/python/#span-processing).
Bug Fixes
- tracing: Fixes an issue where truncation of span attributes longer than 25000 characters would not consistently count the size of UTF-8 multibyte characters, leading to a
unicode string is too largeerror.
3.7.2
Bug Fixes
- CI Visibility: This fix resolves an issue where the DD_CIVISIBILITY_ITR_ENABLED was not honored properly.
- tracing: Fixes an issue where truncation of span attributes longer than 25000 characters would not consistently count the size of UTF-8 multibyte characters, leading to a
unicode string is too largeerror.
3.8.0rc2
Bug Fixes
-
CI Visibility
- Resolves an issue where the
DD_CIVISIBILITY_ITR_ENABLEDwas not honored properly.
- Resolves an issue where the
-
Tracing
- Fixes a bug in distributed tracing where pickling
ddtrace.trace.Contextfails in coroutines. This regression was introduced in v3.7.0.
- Fixes a bug in distributed tracing where pickling
3.8.0rc1
New Features
-
CI Visibility
- Introduces the ability to gzip the payload when using the evp proxy setup, incurring in less network bandwidth consumption.
-
Code Security
- IAST support for
langchainv0.1.0 and above.
- IAST support for
-
Error Tracking
- Introduces automatic reporting of handled exceptions. Enabling the feature will report handled exceptions to Error Tracking from the user code, the third party packages code, some specified modules or everything based on configuration. This feature can be controlled using two environment variables:
DD_ERROR_TRACKING_HANDLED_ERRORS=user|third_party|allDD_ERROR_TRACKING_HANDLED_ERRORS_INCLUDE=module1, module2, module3.submodule
- Introduces automatic reporting of handled exceptions. Enabling the feature will report handled exceptions to Error Tracking from the user code, the third party packages code, some specified modules or everything based on configuration. This feature can be controlled using two environment variables:
-
LLM Observability
openai: Introduces tracing support for the OpenAI Responses endpoint.
Bug Fixes
-
CI Visibility
- Resolves an issue where
pytest-xdistwould not exit with the proper status code if ATR was enabled. - Resolves an issue where ddtrace pytest plugin used with
xdistwould report test suites as failing even when all tests pass.
- Resolves an issue where
-
Code Origin
- Fixes a performance issue with exit spans.
-
Code Security (IAST)
- Avoids excessive filtering of stacktrace locations when finding vulnerabilities. After this change, vulnerabilities that were previously discarded will now be reported. In particular, if they were found within code in site-packages or outside of the working directory.
-
Dynamic Instrumentation
- Prevents an exception when trying to remove a probe that did not resolve to a valid source code location.
-
LLM Observability
- Resolves an issue where spans and evaluation metrics were not being sent via Unix sockets.
-
Profiling
- Fixes an issue in the
SynchronizedSamplePoolwhere pool could be null when calling intoddog_ArrayQueue_functions, leading to segfaults in the uWSGI shutdown - Improves performance of the memory profiler for large heaps. The memory profiler previously did a linear search of tracked allocations for every free, which scaled very poorly with large heaps. Switch to a fast hash map.
- Fixes an issue in the
-
Tracing
kafka: Resolves an issue where message headers were sent to Kafka brokers that do not support them. Message headers are turned off when the Kafka server responds withUNKNOWN_SERVER_ERROR (-1).
3.7.1
Bug Fixes
- CI Visibility: This fix resolves an issue where pytest-xdist would not exit with the proper status code if ATR was enabled.
- CI Visibility: This fix resolves an issue where ddtrace pytest plugin used with xdist would report test suites as failing even when all tests pass.
2.21.8
Bug Fixes
- Code Security:
- Avoid excessive filtering of stacktrace locations when finding vulnerabilities. After this change, vulnerabilities that were previously discarded will now be reported. In particular, if they were found within code in site-packages or outside of the working directory.
- Fixes a bug where invalid f-strings didn’t raise the expected "Unknown format code" error when IAST was enabled.
- Profiling:
- Improve performance of the memory profiler for large heaps. The memory profiler previously did a linear search of tracked allocations for every free, which scaled very poorly with large heaps. Switch to a fast hash map.
- Other:
- Code origin for spans: fixes a performance issue with exit spans.
- Fix a potential circular import with the psycopg2 contrib.
2.21.7
Bug Fixes
- Dynamic Instrumentation
- Fixes incompatibility between code origin and dynamic instrumentation probe on exit span functions.