Skip to content

[DOCS-15222] Document Java agentless Feature Flags delivery - #38518

Open
leoromanovsky wants to merge 9 commits into
masterfrom
leo.romanovsky/java-agentless-feature-flags-docs
Open

[DOCS-15222] Document Java agentless Feature Flags delivery#38518
leoromanovsky wants to merge 9 commits into
masterfrom
leo.romanovsky/java-agentless-feature-flags-docs

Conversation

@leoromanovsky

@leoromanovsky leoromanovsky commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

Motivation

Java 1.65.0 adds default CDN delivery for dd-openfeature. Direct delivery simplifies onboarding for long-running servers and supports serverless runtimes that cannot connect to a Datadog Agent.

Java must still load dd-java-agent as a JVM agent. Remote Configuration also requires a reachable Datadog Agent. Customers need clear requirements for both components and delivery sources.

Changes and Decisions

  • List version 1.65.0 as the minimum for Java dd-openfeature and dd-java-agent.
  • Define agentless delivery as removing the external Datadog Agent requirement for flag configuration.
  • Document the Java -javaagent and JAVA_TOOL_OPTIONS requirements.
  • Distinguish CDN configuration delivery from the separate telemetry path required for evaluation data.
  • Link to the Java Cloud Run Functions and container setup examples.
  • Keep Agent Remote Configuration as an explicit secondary source.

Validation

  • ffe-dogfooding #96 passed provider activation, evaluation, ETag polling, and shutdown without a Datadog Agent.
  • system-tests #7300 passed agentless CDN evaluation and the Java compatibility matrix.

@leoromanovsky

Copy link
Copy Markdown
Contributor Author

/review

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 Automated review by Claude. AI-generated; verify before acting.

Reviewed the Java Feature Flags updates and the surrounding pages that reference Java support. Findings are minor clarity/consistency issues — nothing blocking. See inline comments.

Reviewed ad0ff38485ded74706b1e47509b919e007eb5161workflow run

Comment thread content/en/feature_flags/server/java.md Outdated
Comment thread content/en/feature_flags/server/java.md Outdated
Comment thread content/en/feature_flags/server/java.md Outdated
Comment thread content/en/feature_flags/server/_index.md Outdated
Comment thread content/en/feature_flags/concepts/configuration_sources.md Outdated
Comment thread content/en/feature_flags/implementation_patterns/serverless.md Outdated
@leoromanovsky
leoromanovsky marked this pull request as ready for review July 28, 2026 21:57
@leoromanovsky
leoromanovsky requested a review from a team as a code owner July 28, 2026 21:57

@janine-c janine-c left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great! I have some minor writing notes, but nothing urgent. Let me know if you have any questions, and let me know if you need anything else!

Comment thread content/en/feature_flags/concepts/configuration_sources.md Outdated
Comment thread content/en/feature_flags/server/java.md Outdated
Comment thread content/en/feature_flags/server/java.md
Comment thread content/en/feature_flags/server/java.md Outdated
Comment thread content/en/feature_flags/server/java.md Outdated
Comment thread content/en/feature_flags/server/java.md Outdated
Comment thread content/en/feature_flags/server/java.md Outdated
Comment thread content/en/feature_flags/server/java.md Outdated
Comment thread content/en/feature_flags/server/java.md Outdated
Comment thread content/en/feature_flags/server/java.md Outdated
@leoromanovsky
leoromanovsky requested a review from aarsilv July 30, 2026 19:58

@aarsilv aarsilv left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for doing this! Approving with a few comments you can take or leave

Comment thread content/en/feature_flags/implementation_patterns/serverless.md
- A Datadog [**API key**][7]
- Your Datadog [**site**][14]

Use the same version of `dd-java-agent` and `dd-openfeature`. Agentless delivery does not require a separate Datadog Agent service.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this be use a minimum version? What if dd-java-agent is upgraded but we haven't made any changes to dd-openfeature?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I mention the minimum version 1.65.0 (next minor) in a few places; they are published w/ the same tag.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Use the same version of dd-java-agent and dd-openfeature

I was wondering if this may make people think dd-java-agent and dd-openfeature must always be the same version as each other.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see - for this release specifically yes agent just needs to be bumped to 1.6.5.

In the serverless docs (https://docs.datadoghq.com/serverless/guide/datadog_forwarder_java/), they encourage people to always download latest Java agent, or rather don't really mention a pinned version.

Overall it is a positive thing for us if people DO keep the versions in sync, for example in the next release we'll add exposure forwarding through the Java agent and I want them to upgrade to it.

5. Confirm that application code initializes the Datadog OpenFeature provider.
6. Confirm that `DD_API_KEY`, `DD_SITE`, and `DD_ENV` are configured in the application process.
7. Confirm that the application can make outbound HTTPS requests to Datadog.
8. Enable `DD_TRACE_DEBUG=true` and check for authentication, timeout, or malformed-payload messages from the Feature Flags agentless endpoint.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we add something like during the migration window confirm DD_EXPERIMENTAL_FLAGGING_PROVIDER_ENABLED is no longer set

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants