Bug Fixes
- CI Visibility: fixes the fact that the GITHUB_SERVER_URL environment variable was not being sanitized for credentials
- dynamic instrumentation: Needs to update the pubsub instance when the application forks because the probe mechanism should run in the child process. For that, DI needs the callback as the method of an instance of Debugger, which lives in the child process.
- Vulnerability Management for Code-level (IAST): This fix resolves an issue where, at AST patching to replace code with IAST aspects, passing the original function/method as an extra parameter for accurate patching unintentionally triggers side effects in methods obtained from an expression (like
decode
infile.read(n).decode()
), resulting in unexpected multiple calls to the expression (file.read(n)
in the example). - tracing: This fix resolves an issue where unserializable tracer attributes caused crashes when
DD_TRACE_DEBUG
was set. - kafka: This fix resolves an issue where calls to
confluent_kafka
'sproduce
method withkey=None
would cause an exception to be raised. - tracing: This fix resolves an issue where ddtrace's signal handlers could cause Flask apps not to respond correctly to SIGINT.
- logging: A log handler is automatically added to the ddtrace logger upon ddtrace import, when not using ddtrace-run. This can lead to duplicate logging if users add additional loggers and do not explicitly modify the ddtrace logger. This fix adds a feature flag that can be used to toggle this behavior off
DD_TRACE_LOG_STREAM_HANDLER
which defaults totrue
.