[DOCS-15222] Document serverless Feature Flags telemetry egress - #39311
[DOCS-15222] Document serverless Feature Flags telemetry egress#39311leoromanovsky wants to merge 2 commits into
Conversation
2c9068a to
fd7d195
Compare
|
/review |
There was a problem hiding this comment.
🤖 Automated review by Claude. AI-generated; verify before acting.
Overall the PR replaces the pre-1.65/5.116/4.14 warning boxes with clearer prose and adds a new Send feature flag telemetry with serverless-init section that ties the pages together well. A few style/clarity nits, no blockers.
Reviewed fd7d195c8c19049dbd09ee6e88da294773490618 — workflow run
There was a problem hiding this comment.
Pull request overview
Note
Copilot was unable to run its full agentic suite in this review.
Updates the Feature Flags server-side documentation to clarify how agentless configuration delivery relates to telemetry (exposures, EVP events, and OTLP metrics), and to direct serverless users toward serverless-init for telemetry egress.
Changes:
- Replaces earlier “agentless limitation” callouts with updated guidance on telemetry egress paths (local relay / serverless-init / OTLP).
- Adds a new “Send feature flag telemetry with serverless-init” section (and links to it) across language pages and configuration source docs.
- Clarifies separation between EVP events (via tracer URL / 8126) and
feature_flag.evaluationsOTLP metric (4317/4318).
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| hugo/content/en/feature_flags/server/python.md | Updates agentless + serverless guidance and adds link to serverless-init telemetry section. |
| hugo/content/en/feature_flags/server/nodejs.md | Updates agentless telemetry statements and adds serverless-init guidance/link. |
| hugo/content/en/feature_flags/server/java.md | Updates agentless telemetry statements and adds serverless-init guidance/link. |
| hugo/content/en/feature_flags/server/_index.md | Reframes top-level guidance around serverless-init telemetry egress and OTLP metrics separation. |
| hugo/content/en/feature_flags/implementation_patterns/serverless.md | Adds a new section describing serverless-init as telemetry relay, rollout table, and verification steps. |
| hugo/content/en/feature_flags/guide/server_flag_evaluation_metrics.md | Clarifies OTLP metric vs EVP/exposure telemetry and serverless-init/8126 limitations for OTLP. |
| hugo/content/en/feature_flags/concepts/configuration_sources.md | Links agentless delivery guidance to the new serverless-init telemetry section. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
| | SDK | Availability | Experiment exposure events | Event Platform Proxy (EVP) flag evaluation events | Egress path | | ||
| |---|---|---|---|---| | ||
| | Java 1.65.0 | Released | Supported | Not emitted | Local relay | | ||
| | Java 1.66.0 | Upcoming | Supported | Supported | Prefer a local relay; use direct fallback when a compatible relay is unavailable | | ||
| | Node.js 5.116.0 on v5, or 6.5.0 on v6 | Released | Supported | Not emitted | Local relay | | ||
| | Python 4.14.0 | Upcoming | Supported | Supported | Local relay | |
| The Datadog provider implements the [OpenFeature](https://openfeature.dev/) standard. It uses `dd-java-agent` for configuration delivery. Agentless delivery removes the external Datadog Agent requirement, but `dd-java-agent` must still load in the JVM. | ||
|
|
||
| <div class="alert alert-warning">Starting in version 1.65.0, agentless mode changes only flag configuration. Java still requires a supported Datadog Agent or serverless telemetry path to export evaluation metrics or exposure events. Without such a path, only configuration delivery and local flag evaluation work.</div> | ||
| Agentless delivery changes only the flag configuration source. Java 1.65.0 sends experiment exposure events through a supported local Event Platform Proxy (EVP) relay. The upcoming 1.66.0 release also sends aggregate EVP flag evaluation events. It prefers a compatible local relay and sends both event types directly when no compatible relay is available. |
| - [Migrate an existing Remote Configuration setup][11] and remove the deprecated `DD_EXPERIMENTAL_FLAGGING_PROVIDER_ENABLED` setting | ||
|
|
||
| Agentless mode changes only flag configuration. It does not configure or enable `feature_flag.evaluations`, exposure logging, or experimentation use cases. These features require a supported Datadog Agent or serverless telemetry path. For more information on available graphing, see [Feature Flag Graphs](/feature_flags/concepts/flag_graphs/). | ||
| For no-Agent serverless environments, use [`serverless-init`][17] to send experiment exposure events from Java 1.65.0. The upcoming 1.66.0 release prefers a compatible local relay for exposure and aggregate flag evaluation events. It uses authenticated direct EVP fallback when no compatible relay is available. This direct path uses the application `DD_API_KEY` and `DD_SITE` settings. The `feature_flag.evaluations` metric uses the separate OTLP setup in the [Server-Side Flag Evaluation Metrics][8] guide. For more information on available graphing, see [Feature Flag Graphs](/feature_flags/concepts/flag_graphs/). |
| This page describes how to instrument your Node.js application with the Datadog Feature Flags SDK. The Node.js SDK integrates with [OpenFeature][2], an open standard for feature flag management. Starting in `dd-trace` 5.116.0 and 6.5.0, it loads flag configuration directly from the Datadog-managed CDN by default. | ||
|
|
||
| <div class="alert alert-warning">Node.js 5.116.0 and 6.5.0 support agentless configuration delivery and local flag evaluation only. They do not support evaluation metrics, exposure logging, or experimentation use cases.</div> | ||
| Agentless delivery changes only the flag configuration source. Node.js sends experiment exposure events through a supported local Event Platform Proxy (EVP) relay. It does not emit EVP flag evaluation events. |
| This guide explains how to install and enable the SDK, create an OpenFeature client, and evaluate feature flags in your application. | ||
|
|
||
| <div class="alert alert-warning">Python agentless delivery changes only the configuration source. Without a supported Datadog Agent or serverless telemetry path, the SDK does not export evaluation metrics or exposure events.</div> | ||
| Agentless delivery changes only the flag configuration source. Python sends experiment exposures and aggregated Event Platform Proxy (EVP) flag evaluation events through a supported local relay. |
Motivation
Agentless delivery does not explain how serverless applications send exposure and flag evaluation telemetry. Customers can configure CDN delivery but lose these signals when no local telemetry relay is available.
Changes and Decisions
serverless-init1.9.13 or later as a local telemetry relay, not a configuration source.feature_flag.evaluationsOTLP metric setup separate from the EVP paths.Next Steps
Agentless configuration delivery reached Java, Node.js, and Python before telemetry egress reached parity. The versioned rollout matrix prevents the documentation from describing upcoming behavior as available in released SDKs.
Keep the separate released and upcoming rows while signal support and egress paths differ. After all three SDKs support the same signals and egress behavior, replace the transitional rows with one minimum version for each SDK and remove the rollout note.