Skip to content

[DOCS-14545] Add AWS Lambda to the AWS integration instrumentation guides - #39708

Draft
tedkahwaji wants to merge 6 commits into
masterfrom
teddy/docs14545-aws-lambda-instrumentation
Draft

[DOCS-14545] Add AWS Lambda to the AWS integration instrumentation guides#39708
tedkahwaji wants to merge 6 commits into
masterfrom
teddy/docs14545-aws-lambda-instrumentation

Conversation

@tedkahwaji

@tedkahwaji tedkahwaji commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

What does this PR do? What is the motivation?

Fixes DOCS-14545

Expands #39078 (Amazon EC2 only) to cover AWS Lambda functions, now that managed Lambda instrumentation is available as a workload in the same AWS integration flow. Both pages stay gated with private: true.

hugo/content/en/integrations/guide/aws-agent-installation.md:

  • Adds a supported-workloads section and splits prerequisites per workload. Lambda prerequisites cover resource collection, the commercial aws partition, Zip package type, architecture, the AWS five-layer limit, and the supported runtime matrix.
  • Splits the permissions section into shared change-notification permissions, EC2 permissions, and Lambda permissions.
  • Adds a section on what Datadog changes on a function (layers, DD_SITE / DD_ORG_UUID, handler redirection for Node.js and Python, exec wrapper for Java and .NET) and notes that no Datadog API key is written into the function.
  • Adds an uninstall section and Lambda troubleshooting: already-instrumented functions, the layer limit, a non-Datadog execution wrapper, and ineligibility reasons.
  • Notes that a function can be managed by only one Datadog instrumentation product, and links to the existing remote instrumentation guide.

hugo/content/en/integrations/guide/aws-agent-installation-technical-reference.md:

  • Splits created AWS resources into stack-created and per-workload. Adds the Lambda EventBridge forwarding rule, and records that Lambda instrumentation creates no AWS resources of its own.
  • Adds the Lambda instrumentation sequence, the replace-style update semantics, and the revision-ID guard.
  • Documents the workload identity federation model: the extension authenticates with the function execution role, and Datadog reconciles the intake mapping before updating a function. Mappings are create-only because execution roles are often shared.
  • Documents Lambda reconciliation: hourly scans that skip functions already on current layer versions, event-driven reconciliation from forwarded change events, layer version rollout, and checkpoint-based uninstall.

hugo/layouts/shortcodes/aws-agent-installation.en.md: describes the required permissions per workload, since the CloudFormation stack grants only the permissions for the workloads selected.

Both page titles now say "Datadog Instrumentation" rather than "the Datadog Agent", since on Lambda the product installs layers rather than the Agent. Filenames and URLs are unchanged.

Also links out to the existing serverless Lambda documentation for extension configuration, monitoring features, and troubleshooting, so a customer who finishes this flow knows where to tune what the extension collects.

Rule coverage is fixed at save time for Lambda the same way it is for EC2 (the resource-selection flow sends is_frozen on create and update for every workload), so that section stays workload-agnostic.

Two TODO(DOCS-14545) comments are added for pre-publish follow-ups: the "How it works" diagram and the setup-toggle screenshot are both EC2-only and predate the Lambda workload.

Preview

Merge readiness

  • Ready for merge

For Datadog employees:

  • ⚠️ Your branch name MUST follow the <name>/<description> convention and include the forward slash (/). If you've already created your PR with an incorrect branch name, please rename your branch and open a fresh PR.
  • 🤖 New: Comment with /review to run an automated check that catches common issues before a Documentation team member reviews your PR.

AI assistance

Claude Code was used to read the implementation across the instrumenter services and the AWS Quick Start template, and to draft the documentation changes. All content was reviewed against the source.

Additional notes

Both pages remain gated with private: true and must be un-gated together, since they cross-link. The screenshots and diagram should be refreshed for the Lambda workload before publish.

@tedkahwaji
tedkahwaji requested a review from a team as a code owner September 3, 2026 15:34
@github-actions github-actions Bot added Architecture Everything related to the Doc backend Guide Content impacting a guide labels Sep 3, 2026
@github-actions

github-actions Bot commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

@tedkahwaji
tedkahwaji marked this pull request as draft September 3, 2026 16:23
tedkahwaji and others added 5 commits September 4, 2026 12:11
…ides

Expand the AWS integration instrumentation guide and technical reference
to cover AWS Lambda functions alongside Amazon EC2 instances:

- Per-workload prerequisites, including supported Lambda runtimes,
  architectures, package type, partition, and the layer limit
- Per-workload IAM permission tables, with change-notification
  permissions split out as shared
- What Datadog changes on a function, and the workload identity
  federation model that avoids writing an API key into the function
- Lambda reconciliation, layer version rollout, and checkpoint-based
  uninstall
- Lambda troubleshooting, including exclusivity with remote
  instrumentation

Generalize the aws-agent-installation shortcode to describe permissions
per workload.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
…ording

- Rule coverage is fixed at save time for Lambda as well as EC2: the UI
  sends is_frozen on create and update for every workload. Removes the
  open question and restores the workload-agnostic wording.
- Link out to the existing serverless Lambda docs for extension
  configuration, monitoring features, and troubleshooting.
- Reword implementation details that read as internal: intake mapping
  reconciliation, permissions boundaries, and control-plane throttling.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Lambda instrumentation authenticates through Workload Identity
Federation, but neither page linked the WIF documentation. Adds the link
inline and to further reading on both pages, and states that Datadog
sets up the authorization so there is nothing for the customer to
configure.

Flags a pre-publish dependency: WIF for intake is documented as
Enterprise-only, and Lambda instrumentation needs it available to the
orgs this feature targets.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Drops the pre-publish caveat about Enterprise-only gating for Workload
Identity Federation; these pages stay gated with private: true until the
rollout, by which point the gate is lifted.

Also names Workload Identity Federation in the AWS partition
prerequisite, which described it as "cloud-based authentication", and
links it there.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Add a comparison section to the setup guide covering where the work runs,
how functions are selected, layer version control, credentials, and
removal, plus a pointer to it from the technical reference.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@tedkahwaji
tedkahwaji force-pushed the teddy/docs14545-aws-lambda-instrumentation branch from 0ebf59e to 746639d Compare September 4, 2026 16:21
The header row began with an empty cell, which Hugo drops, shifting the
header labels one column left and leaving the third column unlabeled.

Also scope the authentication row to the function, since the stack's
EventBridge connection does hold Datadog keys in the account, and keep
the "what runs in your account" row to compute only.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Architecture Everything related to the Doc backend Guide Content impacting a guide

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant