New Features
- graphql: add tracing for
graphql-core>2
. See the graphql documentation for more information. - ASM: Detect attacks on Django body.
- ASM: Detect attacks on Flask request cookies.
- ASM: Detect attacks on Django request cookies.
- ASM: Detect attacks on Pylons HTTP query.
- ASM: Detect attacks on Pylons request cookies.
- ASM: detect attacks on Pylons path parameters.
- ASM: Report HTTP method on Pylons framework.
- ASM: Collect raw uri for Pylons framework.
- AppSec: collect response headers.
- ASM: Detect attacks on Flask body.
- ASM: Detect attacks on path parameters.
- The profiler now supports Windows.
- The profiler now supports code provenance reporting. This can be enabled by using the
enable_code_provenance=True
argument to the profiler or by setting the environment variableDD_PROFILING_ENABLE_CODE_PROVENANCE
totrue
. - Adds support for Lambda profiling, which can be enabled by starting the profiler outside of the handler (on cold start).
Bug Fixes
- flask: add support for
flask>=2.2.0
. - Fixed the environment variable used for log file size bytes to be
DD_TRACE_LOG_FILE_SIZE_BYTES
as documented. - jinja2: fix handling of template names which are not strings.
- Fixed support for pytest-bdd 6.
- Fixes cases where a pytest test parameter object string representation includes the
id()
of the object, causing the test fingerprint to constantly change across executions. - wsgi: ignore GeneratorExit Exception in wsgi.response spans.
- wsgi: ensures resource and http tags are always set on wsgi.request spans.
- ASM: fix Python 2 error reading WAF rules.
- tracing: fix nested web frameworks re-extracting and activating HTTP context propagation headers.
- requests: fix split-by-domain service name when multiple
@
signs are present in the url. - profiling: fix a possible deadlock due to spans being activated unexpectedly.
- tracing: fix handling of unicode
_dd.origin
tag for Python 2.
Other Notes
- profiler: don't initialize the
AsyncioLockCollector
unless asyncio is
available. This prevents noisy logs messages from being emitted in Python 2. - docs: Added troubleshooting section for missing error details in the root span of a trace.