Slow cloud request/response tagging in Docker Lambda function with datadog-lambda
@joeyzhao2018 is already working on this.
Since Jul 14, 2025.
Assessment
This issue has not been assessed yet.
Description
Hi, not sure if this is the right place or it should rather go to ddtrace or somewhere else:
Reproduction repo with CDK: https://github.com/maxfriedrich/datadog-cloud-payload-tagging-repro
The cloud request/response payload tagging feature causes a big slowdown for us for any DynamoDB query, even when "disabled" with the environment variable value "$.*" (0.xx seconds to > 10 seconds query), with the following setup:
- Docker Lambda based on the Lambda Python 3.11 (or 3.13) base image
- Installing the Datadog Lambda extension into the container
- Installing datadog-lambda and ddtrace with into the container
- Running the function with
datadog_lambda.handler
(this function outgrew the zip size limit, this is why it's built like this -- is this a supported setup?)
We can work around it by setting the environment variable values to "", fully disabling the feature, not just redacting all fields.
The problem only occurs with a Docker based Lambda function, the handler from my reproduction is fine in the Python runtime and the Datadog extension and Lambda layers.
Output from my test script:
Testing slow function: arn:aws:lambda:eu-central-1:...:function:DdTaggingReproStack-Function1904AA941-QLjJ2nwy96AV
Execution time: 11.545 seconds
Execution time: 10.865 seconds
Execution time: 11.279 seconds
Execution time: 11.604 seconds
Execution time: 11.659 seconds
Testing fast function: arn:aws:lambda:eu-central-1:...:function:DdTaggingReproStack-Function28EA0674A-36P7xO9x9CbG
Execution time: 0.235 seconds
Execution time: 0.188 seconds
Execution time: 0.168 seconds
Execution time: 0.194 seconds
Execution time: 0.206 seconds
Do you have any ideas what could cause this? Feel free to move the issue if it belongs somewhere else. Thank you very much!
- Dominant language
- Python
- Stars
- 102
- Forks
- 52
- PR merge metrics
- No merged PRs in 30d
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from DataDog/datadog-lambda-python
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
DataDog/datadog-lambda-python#758 · 1 reaction ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
DataDog/datadog-lambda-python#755 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 30/100
DataDog/datadog-lambda-python#688 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
DataDog/datadog-lambda-python#682 · 1 comment ·
-
Difficulty 3/5 1-2 days Newbie friendliness 45/100
DataDog/datadog-lambda-python#666 · 1 reaction ·
All issues in DataDog/datadog-lambda-python
Similar issues
-
Add: hunch Open
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
AbdelStark/awesome-typesafe#104 ·
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
DiamondLightSource/dodal#2211 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
openml/openml-python#1749 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
sipyourdrink-ltd/bernstein#6191 ·