Skip to content

Fix Java parametric protocol selection#7347

Merged
AlexeyKuznetsov-DD merged 1 commit into
mainfrom
alexeyk/fix-java-parametric-protocol
Jul 20, 2026
Merged

Fix Java parametric protocol selection#7347
AlexeyKuznetsov-DD merged 1 commit into
mainfrom
alexeyk/fix-java-parametric-protocol

Conversation

@AlexeyKuznetsov-DD

Copy link
Copy Markdown
Contributor

Motivation

Java parametric scenarios requesting v0.5, but actually ignored by dd-trace-java tracer.
As specified in RFC: Efficient Trace Payload Protocol. Protocol can be specified via: DD_TRACE_AGENT_PROTOCOL_VERSION variable. And default value is v0.4 for now.

Configuration: When this feature is off by default it can be enabled in the Client Library using the environment variable DD_TRACE_AGENT_PROTOCOL_VERSION with a value of “1.0”

Changes

Maps shared DD_TRACE_API_VERSION values (v0.4, v0.5, and v1.0) to the Java tracer setting DD_TRACE_AGENT_PROTOCOL_VERSION in the parametric launcher while preserving explicit Java configuration.

Workflow

  1. ⚠️ Create your PR as draft ⚠️
  2. Work on you PR until the CI passes
  3. Mark it as ready for review
    • Test logic is modified? -> Get a review from RFC owner.
    • Framework is modified, or non obvious usage of it -> get a review from R&P team

🚀 Once your PR is reviewed and the CI green, you can merge it!

🛟 #apm-shared-testing 🛟

Reviewer checklist

  • Anything but tests/ or manifests/ is modified ? I have the approval from R&P team
  • A docker base image is modified?
    • the relevant build-XXX-image label is present
  • A scenario is added, removed or renamed?

@github-actions

Copy link
Copy Markdown
Contributor

CODEOWNERS have been resolved as:

utils/build/docker/java/parametric/run.sh                               @DataDog/apm-java @DataDog/asm-java @DataDog/system-tests-core

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

This PR fixes Java parametric runs so the shared protocol selector (DD_TRACE_API_VERSION: v0.4, v0.5, v1.0) is correctly applied to the Java tracer via DD_TRACE_AGENT_PROTOCOL_VERSION, while preserving any explicit Java-side configuration already set by the user/environment.

Changes:

  • Adds a translation layer in the Java parametric Docker launcher to map DD_TRACE_API_VERSIONDD_TRACE_AGENT_PROTOCOL_VERSION when the latter is not already set.
  • Supports the shared protocol values v0.4, v0.5, and v1.0 by converting them to the Java-expected format (0.4, 0.5, 1.0).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@AlexeyKuznetsov-DD
AlexeyKuznetsov-DD merged commit 0e4b2ba into main Jul 20, 2026
427 checks passed
@AlexeyKuznetsov-DD
AlexeyKuznetsov-DD deleted the alexeyk/fix-java-parametric-protocol branch July 20, 2026 19:24
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