From 1759abbc91e534a6ad150b223dc42febe3e2c662 Mon Sep 17 00:00:00 2001 From: Douglas Q Hawkins Date: Wed, 8 Jul 2026 13:19:51 -0400 Subject: [PATCH] Make GitInfo a TagContributor (addTags -> addTo) GitInfo already projected its own state onto a span via addTags. Formalize it as a TagContributor and rename addTags -> addTo to match the interface (void addTo(AgentSpan)). Sole caller (GitMetadataTraceInterceptor) updated. Stacked on the TagContributor API PR. Co-Authored-By: Claude Opus 4.8 --- .../datadog/trace/common/GitMetadataTraceInterceptor.java | 2 +- .../src/main/java/datadog/trace/api/git/GitInfo.java | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/dd-trace-core/src/main/java/datadog/trace/common/GitMetadataTraceInterceptor.java b/dd-trace-core/src/main/java/datadog/trace/common/GitMetadataTraceInterceptor.java index df43b61d6d6..7e44c41eae5 100644 --- a/dd-trace-core/src/main/java/datadog/trace/common/GitMetadataTraceInterceptor.java +++ b/dd-trace-core/src/main/java/datadog/trace/common/GitMetadataTraceInterceptor.java @@ -29,7 +29,7 @@ public Collection onTraceComplete( String ciWorkspacePath = (String) firstSpan.getTag(Tags.CI_WORKSPACE_PATH); GitInfo gitInfo = GitInfoProvider.INSTANCE.getGitInfo(ciWorkspacePath); - gitInfo.addTags(firstSpan); + gitInfo.addTo(firstSpan); return trace; } diff --git a/internal-api/src/main/java/datadog/trace/api/git/GitInfo.java b/internal-api/src/main/java/datadog/trace/api/git/GitInfo.java index 32929b2b3c8..58f6fa220c3 100644 --- a/internal-api/src/main/java/datadog/trace/api/git/GitInfo.java +++ b/internal-api/src/main/java/datadog/trace/api/git/GitInfo.java @@ -3,9 +3,10 @@ import datadog.trace.api.DDTags; import datadog.trace.api.TagMap; import datadog.trace.bootstrap.instrumentation.api.AgentSpan; +import datadog.trace.bootstrap.instrumentation.api.TagContributor; import java.util.Objects; -public final class GitInfo { +public final class GitInfo implements TagContributor { public static final GitInfo NOOP = new GitInfo(null, null, null, CommitInfo.NOOP); private final String repositoryURL; @@ -22,7 +23,7 @@ public GitInfo(String repositoryURL, String branch, String tag, CommitInfo commi this.tag = tag; this.commit = commit; - // GitInfo is reused across many traces, so create entries once and reuse them (see addTags) + // GitInfo is reused across many traces, so create entries once and reuse them (see addTo) // null & empty values result in null entries which nop when added to a span this.repositoryEntry = TagMap.Entry.create(DDTags.INTERNAL_GIT_REPOSITORY_URL, repositoryURL); this.commitEntry = @@ -47,7 +48,8 @@ public CommitInfo getCommit() { return commit; } - public void addTags(AgentSpan span) { + @Override + public void addTo(AgentSpan span) { span.setTag(this.repositoryEntry); span.setTag(this.commitEntry); }