3.3.0rc1
Pre-release
Pre-release
New Features
-
ASM
- Introduces new metrics span tags to keep track of truncations of WAF payloads.
- Introduces support for automatic instrumentation of session monitoring and blocking for Django.
-
LLM Observability
- Introduces tracing for
conversecalls to the Bedrock Converse API.conversecalls are traced as LLM spans withmax_tokens,temperatureinference parameters and input/output messages. - Avoids submitting spans to LLM Observability when a non-default base URL is detected in request for the Anthropic, Bedrock, LangChain, Open AI, and Azure Open AI integrations.
- Introduces tracing for
-
Telemetry
- SCA: This add support for extended heartbeat every 24h with dependencies payload.
-
Tracing
botocore: Introduces capturing prompts, token usage, and inference parameters forconversecalls to the Bedrock API.kafka: Adds messaging.destination.name tag to kafkaproduceandconsumespans.- runtime_metrics: Adds support for sending runtime metrics as gauge metrics (instead of distributions). To enable this feature set
DD_TRACE_EXPERIMENTAL_FEATURES_ENABLED=DD_RUNTIME_METRICS_ENABLED. - runtime_metrics: Adds support for tagging runtime metrics with the current runtime ID. To enable tagging, set
DD_TRACE_EXPERIMENTAL_RUNTIME_ID_ENABLED=True. - Includes
dynamodbin the default list of cloud services for payload tagging, i.e.DD_TRACE_CLOUD_PAYLOAD_TAGGING_SERVICES. Note that cloud services payload tagging feature is still gated byDD_TRACE_CLOUD_REQUEST_PAYLOAD_TAGGINGandDD_TRACE_CLOUD_RESPONSE_PAYLOAD_TAGGING.
Bug Fixes
-
LLM Observability
- Resolves an issue where enabling LLM Observability caused all botocore submodules to be patched instead of only
bedrock-runtime. - Resolves issue where Pydantic model objects were encoded as unhelpful default placeholder text.
- Improves encoding of non-JSON serializable I/O objects by attempting to convert to string before resorting to default placeholder text.
- Resolves an issue where enabling LLM Observability caused all botocore submodules to be patched instead of only
-
Tracing
- dynamic sampling: Ensures that dynamic sampling rates are always consistent with the rates received from the agent via remote configuration. Previously, setting a global sample rate and then sampling rules via remote config would result in both configurations being applied. With this fix only the most recent sampling configuration will be applied.
- internal: Fixes an issue where trimming a traceback to attach it to the span could result in the loss of the most recent frames.
pylibmc: Fixes an issue where usingClient(server=[url])would throw the error__init__() got multiple values for argument 'servers'- tags: Updates
DD_TAGSparsing to match the Datadog Agent and other SDKs. Key-value pairs can now be separated by both commas and spaces (e.g.,DD_TAGS="key1:value1, key2:value2, key3:value3"). This reverts a change introduced in v2.11.0, which only allowed one separator type. - sampling: Ensures remote sampling rules no longer overwrite existing samplers, preserving service-based sample rates set by the Agent and ensuring tracer rate limits configured by ddtrace products (e.g., ASM) are always respected.
- Resolves an issue where trace information, such as span links, baggage, and trace-level tags (ex: sampling decision maker), could be lost when a new process was created while a trace was active.
Other Changes
- Tracing
- Ensures a single DatadogSampler is initialized per Tracer instance, improving Tracer object initialization speed by approximately 7% and simplifying sampling logic.
- agent: Migrates agent connection configurations to envier. This provides better documentation and validation for expected types. The following configuration are affected:
DD_TRACE_AGENT_URLDD_DOGSTATSD_URLDD_TRACE_AGENT_HOSTNAMEDD_AGENT_HOSTDD_TRACE_AGENT_PORTDD_DOGSTATSD_PORTDD_AGENT_PORTDD_TRACE_AGENT_TIMEOUT_SECONDS
Of the above impacted configurations, these had a precedence change:DD_TRACE_AGENT_HOSTNAMEoverDD_AGENT_HOSTDD_TRACE_AGENT_PORToverDD_AGENT_PORTDD_DOGSTATSD_HOSToverDD_AGENT_HOSTDD_DOGSTATSD_PORToverDD_AGENT_PORT