Bug Fixes
-
celery: Fixes Celery worker and producer spans ignoring
DD_TRACE_REMOVE_INTEGRATION_SERVICE_NAMES_ENABLED, causing spans to always usecelery-worker/celery-producerinstead of the configured global service name. -
tracing: This fix resolves an issue where traces buffered before
os.fork()could be sent twice, once by the parent and once by the child. -
tracing: Applying
@tracer.wrap()to an async generator now forwards sent values, thrown exceptions, and close requests to the underlying generator, so it behaves like the unwrapped generator in all cases. Previously the wrapper only relayed values during forward iteration, so sent values were dropped andtry/finallycleanup was skipped whenever the generator was closed early or received a thrown exception. -
tracing: A rare crash happening on versions of CPython prior to 3.12 has been fixed.
-
LLM Observability: Resolves an issue where spans annotated with
metadatacontaining non-string keys (e.g.int/float/bool) could be dropped during ingestion. Metadata keys are now stringified before encoding. -
LLM Observability: Resolves an issue where the OpenAI integration recorded unset request parameters (OpenAI SDK's
Omit/NotGivensentinel values) as noise in LLM span metadata. -
profiling: Rare crashes that could happen post-fork in fork-based applications have been fixed.