Bug Fixes
- anthropic: Fixes an issue where spans were not exported when streamed responses were consumed using
get_final_message()orget_final_text(). - code origin for spans: fix a potential memory leak triggered by having code origin for span explicitly disabled via environment variables.
- internal: Fixes an issue on Python 3.9 through 3.12.3 where applications can crash when background worker threads clean up thread-local or context-local data.
- snowflake: Fixes an issue where traced cursor calls fail when
commandis passed as a keyword argument toexecuteorexecutemany. - profiling: Fixes potential process memory growth when a stack profiling sampling cycle exits before completing a sample.
- profiling: Fixes potential process memory growth in asyncio and gevent workloads after stack profiling sampling cycles exit before completion.
- Fixed an issue that could have caused the internal symbol DB component to restart in nested fork child processes, potentially leading to high memory usage.
- tracing: Fixes an issue where the
v0.5trace API (DD_TRACE_API_VERSION=v0.5) drops traces when a single payload contains between 65,536 and 131,071 unique tag keys and values. - internal: A memory leak triggered when using
@tracer.wrapon functions created at run time has been fixed. - Code Security: Fixes an issue where applications could crash when asynchronous tasks accessed request data after the originating request completed.
- LLM Observability: Resolves an issue where OpenRouter requests made through the LiteLLM integration produced no span when the OpenAI integration was also enabled.
- profiling: A rare crash happening when using gevent has been fixed.