Skip to content

contrib/envoyproxy: refine component detection#3815

Merged
dd-mergequeue[bot] merged 2 commits into
mainfrom
flavien/envoy/improve-component-name-detection
Jul 31, 2025
Merged

contrib/envoyproxy: refine component detection#3815
dd-mergequeue[bot] merged 2 commits into
mainfrom
flavien/envoy/improve-component-name-detection

Conversation

@e-n-0

@e-n-0 e-n-0 commented Jul 29, 2025

Copy link
Copy Markdown
Member

What does this PR do?

This PR refines how the value of the component tag is selected for the GCP Service Extension/Envoy/Istio integration.

#### Changes

  • The AppsecEnvoyConfig is now taking an Integration value instead of an IsGCPServiceExtension bool.
  • Updated the envoy component from envoyproxy/go-control-plane to envoy (The UI currently doesn't use any of the tag component to show the correct proxy icon in the service catalog, so it's safe to change)

Motivation

At first, the Service Extension callout image was only used for GCP Service Extension. However today it's also used and advertised for an Envoy integration. The component tag could be used to determine which integration type is it in the UI.

This could be configured in 2 ways:

  • By code: When registering the ExternalProcessorServer, the Integration is used to select the component tag.
    • This flag is set to GCPServiceExtensionIntegration in the official release of the External Processor callout image
  • By an injected grpc header: x-datadog-envoy-integration or x-datadog-istio-integration with the value set to "1"
    • This header is injected when configuring Envoy/Istio to do it. This is documented in the installation public docs.

Reviewer's Checklist

  • Changed code has unit tests for its functionality at or near 100% coverage.
  • System-Tests covering this feature have been added and enabled with the va.b.c-dev version tag.
  • There is a benchmark for any new code, or changes to existing code.
  • If this interacts with the agent in a new way, a system test has been added.
  • New code is free of linting errors. You can check this by running ./scripts/lint.sh locally.
  • Add an appropriate team label so this PR gets put in the right place for the release notes.
  • Non-trivial go.mod changes, e.g. adding new modules, are reviewed by @DataDog/dd-trace-go-guild.

Unsure? Have a question? Request a review!

@e-n-0
e-n-0 requested a review from a team as a code owner July 29, 2025 15:24
@github-actions github-actions Bot added the apm:ecosystem contrib/* related feature requests or bugs label Jul 29, 2025

@eliottness eliottness 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.

LGTM except for these points:

  • Please use an enum instead of a boolean everywhere
  • would it be possible to detect also detect istio (and maybe traefik?) while we are at it ?

@pr-commenter

pr-commenter Bot commented Jul 29, 2025

Copy link
Copy Markdown

Benchmarks

Benchmark execution time: 2025-07-29 16:28:21

Comparing candidate commit cddd908 in PR branch flavien/envoy/improve-component-name-detection with baseline commit e030258 in branch main.

Found 0 performance improvements and 0 performance regressions! Performance is the same for 24 metrics, 0 unstable metrics.

@e-n-0

e-n-0 commented Jul 29, 2025

Copy link
Copy Markdown
Member Author

I’ve added Istio to the list, but I won’t include Traefik since it isn’t currently supported and might cause confusion

@e-n-0
e-n-0 requested a review from eliottness July 29, 2025 16:16
Comment on lines +87 to +89
componentNameGCPServiceExtension = "gcp-service-extension"
componentNameEnvoy = "envoy"
componentNameIstio = "istio"

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.

Component names usually are made from /. Also having retro compatibility could be cool

@e-n-0

e-n-0 commented Jul 31, 2025

Copy link
Copy Markdown
Member Author

/merge

@dd-devflow-routing-codex

dd-devflow-routing-codex Bot commented Jul 31, 2025

Copy link
Copy Markdown

View all feedbacks in Devflow UI.

2025-07-31 15:28:11 UTC ℹ️ Start processing command /merge


2025-07-31 15:28:24 UTC ℹ️ MergeQueue: pull request added to the queue

The expected merge time in main is approximately 14m (p90).


2025-07-31 15:40:09 UTC ℹ️ MergeQueue: This merge request was merged

@dd-mergequeue
dd-mergequeue Bot merged commit d34fbd2 into main Jul 31, 2025
224 checks passed
@dd-mergequeue
dd-mergequeue Bot deleted the flavien/envoy/improve-component-name-detection branch July 31, 2025 15:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

apm:ecosystem contrib/* related feature requests or bugs mergequeue-status: done

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants