Configuration reference
| Parameter | Type | Default | Description |
|---|---|---|---|
DdApiKey |
String, required, NoEcho |
— | Your Datadog API key, from the API keys page in Datadog organization settings. |
DdSite |
String, required | datadoghq.com |
The Datadog site to send data to. Allowed values: datadoghq.com, datadoghq.eu, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, uk1.datadoghq.com. |
EnableCodeSigningConfigurations |
String ("true"/"false") |
"false" |
Whether to enable code signing configurations on the instrumenter function. |
BucketName |
String | "" (empty) |
Name of the S3 bucket the instrumenter uses for state. Left empty, a name is generated from BucketPrefix. |
BucketPrefix |
String | datadog-remote-instrument |
Prefix used to generate the state bucket name when BucketName isn't set. |
UseExistingCloudTrailTrail |
String ("true"/"false") |
"false" |
If "true", the stack reuses an existing CloudTrail Trail in the deployment region instead of creating one. |
TrailName |
String | datadog-serverless-instrumentation-trail |
Name of the CloudTrail Trail to use. Ignored if UseExistingCloudTrailTrail is "true". |
DdInstrumenterFunctionEnv |
String | dev |
The DD_ENV value applied to the instrumenter Lambda function itself — not to the functions it instruments. |
Supported runtimes and their layers#
Per consts.ts in the source, the instrumenter recognizes seven Lambda runtime families and maps five of them to a specific Datadog tracing layer:
| Runtime | Datadog layer |
|---|---|
| Node.js | Datadog-Node |
| Python | Datadog-Python |
| Ruby | Datadog-Ruby |
| Java | dd-trace-java |
| .NET | dd-trace-dotnet |
provided.al2 |
Extension layer only (custom runtime) |
provided.al2023 |
Extension layer only (custom runtime) |
Which environment variables get set#
The instrumenter's own layer-configuration logic (consts.ts, instrument.ts) works with the standard Datadog Lambda environment variables, including DD_API_KEY, DD_SITE, DD_KMS_API_KEY (for KMS-encrypted keys), DD_TRACE_ENABLED, and DD_SERVERLESS_LOGS_ENABLED. Which of these get written to a given target function depends on your Remote Configuration targeting rules in Datadog, not on the CloudFormation parameters above — see Function Targeting.
Upgrading in place#
To move an existing stack to the latest instrumenter version without going through the Datadog UI again, update the stack using the template at:
https://datadog-cloudformation-template.s3.amazonaws.com/aws/remote-instrument/latest.yaml
See Versioning & Upgrades for what changes between versions.