New Features
-
fastapi: add support for tracing
fastapi.routing.serialize_response
.This will give an insight into how much time is spent calling
jsonable_encoder
within a given request. This does not provide visibility into how long it takes forResponse.render
/json.dumps
. -
Add support to reuse HTTP connections when sending trace payloads to the agent. This feature is disabled by default. Set
DD_TRACE_WRITER_REUSE_CONNECTIONS=true
to enable this feature. -
MySQLdb: Added optional tracing for MySQLdb.connect, using the configuration option here.
-
The profiler now supports profiling
asyncio.Lock
objects. -
Add support for injecting and extracting B3 propagation headers.
See DD_TRACE_PROPAGATION_STYLE_EXTRACT and DD_TRACE_PROPAGATION_STYLE_INJECT configuration documentation to enable.
Bug Fixes
-
botocore: omit
SecretBinary
andSecretString
from span metadata for calls to Secrets Manager. -
Fix issue building
ddtrace
for the Pyston Python implementation by not building the_memalloc
extension anymore when using Pyston. -
tracer.get_log_correlation_context()
: use active context in addition to
active span. Formerly just the span was used and this would break cross execution log correlation as a context object is used for the propagation. -
opentracer: update
set_tag
andset_operation_name
to return a
reference to the span to match the OpenTracing spec. -
The CPU profiler now reports the main thread CPU usage even when asyncio tasks are running.