From 4cb4fdfdbdd0f1f0e3104f4c2b2a3e6d278ceeb6 Mon Sep 17 00:00:00 2001
From: Joey Zhao <5253430+joeyzhao2018@users.noreply.github.com>
Date: Wed, 17 Jun 2026 12:20:07 -0400
Subject: [PATCH 1/2] Add DD_DURABLE_CROSS_INVOCATION_TRACING_ENABLED
explanation in README.md
---
README.md | 1 +
1 file changed, 1 insertion(+)
diff --git a/README.md b/README.md
index a1199e8e..2e1a6d48 100644
--- a/README.md
+++ b/README.md
@@ -30,6 +30,7 @@ Besides the environment variables supported by dd-trace-py, the datadog-lambda-p
| DD_CAPTURE_LAMBDA_PAYLOAD | [Captures incoming and outgoing AWS Lambda payloads][1] in the Datadog APM spans for Lambda invocations. | `false` |
| DD_CAPTURE_LAMBDA_PAYLOAD_MAX_DEPTH | Determines the level of detail captured from AWS Lambda payloads, which are then assigned as tags for the `aws.lambda` span. It specifies the nesting depth of the JSON payload structure to process. Once the specified maximum depth is reached, the tag's value is set to the stringified value of any nested elements beyond this level.
For example, given the input payload:
{
"lv1" : {
"lv2": {
"lv3": "val"
}
}
} If the depth is set to `2`, the resulting tag's key is set to `function.request.lv1.lv2` and the value is `{\"lv3\": \"val\"}`.
If the depth is set to `0`, the resulting tag's key is set to `function.request` and value is `{\"lv1\":{\"lv2\":{\"lv3\": \"val\"}}}` | `10` |
| DD_EXCEPTION_REPLAY_ENABLED | When set to `true`, the Lambda will run with Error Tracking Exception Replay enabled, capturing local variables. | `false` |
+| DD_DURABLE_CROSS_INVOCATION_TRACING_ENABLED | For AWS Durable functions, the tracer creates extra checkpoints named `_datadog_{N}` to propagate trace context across function invocations, keeping spans from multiple invocations in one intact trace for each durable execution. | `true` |
## Opening Issues
From f23fc9e4d98c8e99b66e8de5e70ab87814243ae5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Pablo=20Marti=CC=81nez=20Bernardo?=
Date: Mon, 22 Jun 2026 11:20:17 +0200
Subject: [PATCH 2/2] Move description out of datadog-lambda-python specific
variables, as this is defined in dd-trace-py
---
README.md | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/README.md b/README.md
index 2e1a6d48..9bfa3dbd 100644
--- a/README.md
+++ b/README.md
@@ -18,6 +18,8 @@ Follow the [configuration instructions](https://docs.datadoghq.com/serverless/co
For additional tracing configuration options, check out the [official documentation for Datadog trace client](https://ddtrace.readthedocs.io/en/stable/configuration.html).
+For AWS Durable functions, trace context is propagated across invocations by dd-trace-py, keeping spans from multiple invocations in one intact trace per durable execution. This is controlled by the dd-trace-py environment variable `DD_DURABLE_CROSS_INVOCATION_TRACING_ENABLED` (default `true`).
+
Besides the environment variables supported by dd-trace-py, the datadog-lambda-python library added following environment variables.
| Environment Variables | Description | Default Value |
@@ -30,7 +32,6 @@ Besides the environment variables supported by dd-trace-py, the datadog-lambda-p
| DD_CAPTURE_LAMBDA_PAYLOAD | [Captures incoming and outgoing AWS Lambda payloads][1] in the Datadog APM spans for Lambda invocations. | `false` |
| DD_CAPTURE_LAMBDA_PAYLOAD_MAX_DEPTH | Determines the level of detail captured from AWS Lambda payloads, which are then assigned as tags for the `aws.lambda` span. It specifies the nesting depth of the JSON payload structure to process. Once the specified maximum depth is reached, the tag's value is set to the stringified value of any nested elements beyond this level.
For example, given the input payload: {
"lv1" : {
"lv2": {
"lv3": "val"
}
}
} If the depth is set to `2`, the resulting tag's key is set to `function.request.lv1.lv2` and the value is `{\"lv3\": \"val\"}`.
If the depth is set to `0`, the resulting tag's key is set to `function.request` and value is `{\"lv1\":{\"lv2\":{\"lv3\": \"val\"}}}` | `10` |
| DD_EXCEPTION_REPLAY_ENABLED | When set to `true`, the Lambda will run with Error Tracking Exception Replay enabled, capturing local variables. | `false` |
-| DD_DURABLE_CROSS_INVOCATION_TRACING_ENABLED | For AWS Durable functions, the tracer creates extra checkpoints named `_datadog_{N}` to propagate trace context across function invocations, keeping spans from multiple invocations in one intact trace for each durable execution. | `true` |
## Opening Issues