From 35bf37d0c9a3e32fe931f794fdfb4c9d075050ca Mon Sep 17 00:00:00 2001 From: Nikita Tkachenko Date: Fri, 10 Jan 2025 12:37:12 +0100 Subject: [PATCH] Add a link to Datadog to job details page --- .../datadog/DatadogGlobalConfiguration.java | 7 +- .../DatadogAgentConfiguration.java | 52 ++++++++++--- .../DatadogApiConfiguration.java | 5 ++ .../DatadogClientConfiguration.java | 9 ++- .../api/intake/DatadogIntakeSite.java | 12 ++- .../listeners/DatadogBuildListener.java | 39 +++++++--- .../datadog/model/DatadogLinkAction.java | 70 ++++++++++++++++++ .../DatadogAgentConfiguration/config.jelly | 4 + .../DatadogAgentConfiguration/help-site.html | 4 + src/main/webapp/icons/dd_icon_rgb.png | Bin 0 -> 74745 bytes .../datadog/apm/TracerInjectionIT.java | 3 +- 11 files changed, 176 insertions(+), 29 deletions(-) create mode 100644 src/main/java/org/datadog/jenkins/plugins/datadog/model/DatadogLinkAction.java create mode 100644 src/main/resources/org/datadog/jenkins/plugins/datadog/configuration/DatadogAgentConfiguration/help-site.html create mode 100644 src/main/webapp/icons/dd_icon_rgb.png diff --git a/src/main/java/org/datadog/jenkins/plugins/datadog/DatadogGlobalConfiguration.java b/src/main/java/org/datadog/jenkins/plugins/datadog/DatadogGlobalConfiguration.java index d7ecc736..ce5d966f 100644 --- a/src/main/java/org/datadog/jenkins/plugins/datadog/DatadogGlobalConfiguration.java +++ b/src/main/java/org/datadog/jenkins/plugins/datadog/DatadogGlobalConfiguration.java @@ -25,10 +25,12 @@ of this software and associated documentation files (the "Software"), to deal package org.datadog.jenkins.plugins.datadog; +import static org.datadog.jenkins.plugins.datadog.configuration.DatadogAgentConfiguration.DatadogAgentConfigurationDescriptor.*; import static org.datadog.jenkins.plugins.datadog.configuration.DatadogAgentConfiguration.DatadogAgentConfigurationDescriptor.getDefaultAgentHost; import static org.datadog.jenkins.plugins.datadog.configuration.DatadogAgentConfiguration.DatadogAgentConfigurationDescriptor.getDefaultAgentLogCollectionPort; import static org.datadog.jenkins.plugins.datadog.configuration.DatadogAgentConfiguration.DatadogAgentConfigurationDescriptor.getDefaultAgentPort; import static org.datadog.jenkins.plugins.datadog.configuration.DatadogAgentConfiguration.DatadogAgentConfigurationDescriptor.getDefaultAgentTraceCollectionPort; +import static org.datadog.jenkins.plugins.datadog.configuration.api.intake.DatadogIntakeSite.DatadogIntakeSiteDescriptor.getSite; import static org.datadog.jenkins.plugins.datadog.configuration.api.key.DatadogTextApiKey.DatadogTextApiKeyDescriptor.getDefaultKey; import com.thoughtworks.xstream.annotations.XStreamConverter; @@ -44,6 +46,7 @@ of this software and associated documentation files (the "Software"), to deal import hudson.util.XStream2; import java.io.File; import java.io.IOException; +import java.util.*; import java.util.Arrays; import java.util.Collection; import java.util.Collections; @@ -202,7 +205,7 @@ public void loadEnvVariables() { String clientType = System.getenv(REPORT_WITH_PROPERTY); if (DATADOG_AGENT_CLIENT_TYPE.equals(clientType)) { this.datadogClientConfiguration = new DatadogAgentConfiguration( - getDefaultAgentHost(), getDefaultAgentPort(), getDefaultAgentLogCollectionPort(), getDefaultAgentTraceCollectionPort()); + getDefaultAgentHost(), getDefaultAgentPort(), getDefaultAgentLogCollectionPort(), getDefaultAgentTraceCollectionPort(), getSite()); } else { DatadogIntake intake = DatadogIntake.getDefaultIntake(); DatadogTextApiKey apiKey = new DatadogTextApiKey(getDefaultKey()); @@ -1167,7 +1170,7 @@ protected Object readResolve() { this.included = this.whitelist; } if (DATADOG_AGENT_CLIENT_TYPE.equals(reportWith)) { - this.datadogClientConfiguration = new DatadogAgentConfiguration(this.targetHost, this.targetPort, this.targetLogCollectionPort, this.targetTraceCollectionPort); + this.datadogClientConfiguration = new DatadogAgentConfiguration(this.targetHost, this.targetPort, this.targetLogCollectionPort, this.targetTraceCollectionPort, getSite()); } if (DATADOG_API_CLIENT_TYPE.equals(reportWith)) { DatadogIntakeUrls intake = new DatadogIntakeUrls(this.targetApiURL, this.targetLogIntakeURL, this.targetWebhookIntakeURL); diff --git a/src/main/java/org/datadog/jenkins/plugins/datadog/configuration/DatadogAgentConfiguration.java b/src/main/java/org/datadog/jenkins/plugins/datadog/configuration/DatadogAgentConfiguration.java index 273ffcbd..7495fa4a 100644 --- a/src/main/java/org/datadog/jenkins/plugins/datadog/configuration/DatadogAgentConfiguration.java +++ b/src/main/java/org/datadog/jenkins/plugins/datadog/configuration/DatadogAgentConfiguration.java @@ -4,24 +4,27 @@ import hudson.RelativePath; import hudson.model.Descriptor; import hudson.util.FormValidation; -import java.net.MalformedURLException; -import java.net.Socket; -import java.net.URL; -import java.util.HashMap; -import java.util.Map; -import java.util.Objects; -import java.util.logging.Logger; -import javax.annotation.Nonnull; +import hudson.util.ListBoxModel; import jenkins.model.Jenkins; import org.apache.commons.lang.StringUtils; import org.datadog.jenkins.plugins.datadog.DatadogClient; import org.datadog.jenkins.plugins.datadog.DatadogUtilities; import org.datadog.jenkins.plugins.datadog.clients.DatadogAgentClient; +import org.datadog.jenkins.plugins.datadog.configuration.api.intake.DatadogSite; import org.jenkinsci.Symbol; import org.kohsuke.stapler.DataBoundConstructor; import org.kohsuke.stapler.QueryParameter; import org.kohsuke.stapler.interceptor.RequirePOST; +import javax.annotation.Nonnull; +import java.net.MalformedURLException; +import java.net.Socket; +import java.net.URL; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; +import java.util.logging.Logger; + @Symbol("datadogAgentConfiguration") public class DatadogAgentConfiguration extends DatadogClientConfiguration { @@ -45,13 +48,19 @@ public class DatadogAgentConfiguration extends DatadogClientConfiguration { private final Integer agentPort; private final Integer agentLogCollectionPort; private final Integer agentTraceCollectionPort; + private final DatadogSite site; @DataBoundConstructor - public DatadogAgentConfiguration(String agentHost, Integer agentPort, Integer agentLogCollectionPort, Integer agentTraceCollectionPort) { + public DatadogAgentConfiguration(String agentHost, Integer agentPort, Integer agentLogCollectionPort, Integer agentTraceCollectionPort, String site) { + this(agentHost, agentPort, agentLogCollectionPort, agentTraceCollectionPort, StringUtils.isNotBlank(site) ? DatadogSite.valueOf(site) : null); + } + + public DatadogAgentConfiguration(String agentHost, Integer agentPort, Integer agentLogCollectionPort, Integer agentTraceCollectionPort, DatadogSite site) { this.agentHost = agentHost; this.agentPort = agentPort; this.agentLogCollectionPort = agentLogCollectionPort; this.agentTraceCollectionPort = agentTraceCollectionPort; + this.site = site; } public String getAgentHost() { @@ -70,6 +79,10 @@ public Integer getAgentTraceCollectionPort() { return agentTraceCollectionPort; } + public DatadogSite getSite() { + return site; + } + @Override public DatadogClient createClient() { return new DatadogAgentClient(agentHost, agentPort, agentLogCollectionPort, agentTraceCollectionPort); @@ -127,6 +140,11 @@ public Map toEnvironmentVariables() { return variables; } + @Override + public String getSiteName() { + return site != null ? site.getSiteName() : null; + } + @Override public Descriptor getDescriptor() { Jenkins jenkins = Jenkins.getInstanceOrNull(); @@ -218,6 +236,17 @@ public FormValidation doCheckTraceConnectivity(@QueryParameter("agentHost") fina return FormValidation.ok("Success!"); } + @RequirePOST + public ListBoxModel doFillSiteItems() { + DatadogSite[] siteValues = DatadogSite.values(); + ListBoxModel.Option[] values = new ListBoxModel.Option[siteValues.length + 1]; + values[0] = new ListBoxModel.Option(""); + for (int i = 0; i < siteValues.length; i++) { + values[i + 1] = new ListBoxModel.Option(siteValues[i].name()); + } + return new ListBoxModel(values); + } + public static String getDefaultAgentHost() { Map envVars = System.getenv(); @@ -331,11 +360,12 @@ public boolean equals(Object o) { return Objects.equals(agentHost, that.agentHost) && Objects.equals(agentPort, that.agentPort) && Objects.equals(agentLogCollectionPort, that.agentLogCollectionPort) - && Objects.equals(agentTraceCollectionPort, that.agentTraceCollectionPort); + && Objects.equals(agentTraceCollectionPort, that.agentTraceCollectionPort) + && Objects.equals(site, that.site); } @Override public int hashCode() { - return Objects.hash(agentHost, agentPort, agentLogCollectionPort, agentTraceCollectionPort); + return Objects.hash(agentHost, agentPort, agentLogCollectionPort, agentTraceCollectionPort, site); } } \ No newline at end of file diff --git a/src/main/java/org/datadog/jenkins/plugins/datadog/configuration/DatadogApiConfiguration.java b/src/main/java/org/datadog/jenkins/plugins/datadog/configuration/DatadogApiConfiguration.java index f205b97d..3fd411d2 100644 --- a/src/main/java/org/datadog/jenkins/plugins/datadog/configuration/DatadogApiConfiguration.java +++ b/src/main/java/org/datadog/jenkins/plugins/datadog/configuration/DatadogApiConfiguration.java @@ -131,6 +131,11 @@ public Map toEnvironmentVariables() { return variables; } + @Override + public String getSiteName() { + return intake.getSiteName(); + } + @Override public Descriptor getDescriptor() { Jenkins jenkins = Jenkins.getInstanceOrNull(); diff --git a/src/main/java/org/datadog/jenkins/plugins/datadog/configuration/DatadogClientConfiguration.java b/src/main/java/org/datadog/jenkins/plugins/datadog/configuration/DatadogClientConfiguration.java index 4db0b3b8..30662200 100644 --- a/src/main/java/org/datadog/jenkins/plugins/datadog/configuration/DatadogClientConfiguration.java +++ b/src/main/java/org/datadog/jenkins/plugins/datadog/configuration/DatadogClientConfiguration.java @@ -2,13 +2,15 @@ import hudson.model.Describable; import hudson.model.Descriptor; +import jenkins.model.Jenkins; +import org.datadog.jenkins.plugins.datadog.DatadogClient; + +import javax.annotation.Nullable; import java.io.Serializable; import java.util.ArrayList; import java.util.Comparator; import java.util.List; import java.util.Map; -import jenkins.model.Jenkins; -import org.datadog.jenkins.plugins.datadog.DatadogClient; public abstract class DatadogClientConfiguration implements Describable, Serializable { @@ -20,6 +22,9 @@ public abstract class DatadogClientConfiguration implements Describable toEnvironmentVariables(); + @Nullable + public abstract String getSiteName(); + public static abstract class DatadogClientConfigurationDescriptor extends Descriptor { public static List all() { Jenkins jenkins = Jenkins.getInstanceOrNull(); diff --git a/src/main/java/org/datadog/jenkins/plugins/datadog/configuration/api/intake/DatadogIntakeSite.java b/src/main/java/org/datadog/jenkins/plugins/datadog/configuration/api/intake/DatadogIntakeSite.java index 6cd70ab0..8cc44d0f 100644 --- a/src/main/java/org/datadog/jenkins/plugins/datadog/configuration/api/intake/DatadogIntakeSite.java +++ b/src/main/java/org/datadog/jenkins/plugins/datadog/configuration/api/intake/DatadogIntakeSite.java @@ -7,6 +7,7 @@ import org.kohsuke.stapler.DataBoundConstructor; import javax.annotation.Nonnull; +import javax.annotation.Nullable; import java.util.Arrays; import java.util.Objects; @@ -74,7 +75,8 @@ public String getHelpFile() { return getHelpFile("siteBlock"); } - public static DatadogSite getDefaultSite() { + @Nullable + public static DatadogSite getSite() { String site = System.getenv().get(DATADOG_SITE_PROPERTY); if (site != null) { try { @@ -84,6 +86,14 @@ public static DatadogSite getDefaultSite() { "Illegal " + DATADOG_SITE_PROPERTY + " environment property value set: " + site + ". Allowed values are " + Arrays.toString(DatadogSite.values()), e); } + } + return null; + } + + public static DatadogSite getDefaultSite() { + DatadogSite site = getSite(); + if (site != null) { + return site; } else { return DEFAULT_DATADOG_SITE_VALUE; } diff --git a/src/main/java/org/datadog/jenkins/plugins/datadog/listeners/DatadogBuildListener.java b/src/main/java/org/datadog/jenkins/plugins/datadog/listeners/DatadogBuildListener.java index 355dad5e..f35b6c00 100644 --- a/src/main/java/org/datadog/jenkins/plugins/datadog/listeners/DatadogBuildListener.java +++ b/src/main/java/org/datadog/jenkins/plugins/datadog/listeners/DatadogBuildListener.java @@ -25,23 +25,40 @@ of this software and associated documentation files (the "Software"), to deal package org.datadog.jenkins.plugins.datadog.listeners; +import static org.datadog.jenkins.plugins.datadog.DatadogUtilities.cleanUpTraceActions; +import static org.datadog.jenkins.plugins.datadog.traces.TracerConstants.SPAN_ID_ENVVAR_KEY; +import static org.datadog.jenkins.plugins.datadog.traces.TracerConstants.TRACE_ID_ENVVAR_KEY; + import com.cloudbees.workflow.rest.external.RunExt; import com.cloudbees.workflow.rest.external.StageNodeExt; import hudson.Extension; import hudson.Launcher; import hudson.model.*; import hudson.model.listeners.RunListener; +import java.io.IOException; +import java.util.Map; +import java.util.Set; +import java.util.concurrent.TimeUnit; +import java.util.logging.Logger; +import javax.annotation.Nonnull; +import org.apache.commons.lang.StringUtils; import org.datadog.jenkins.plugins.datadog.DatadogClient; import org.datadog.jenkins.plugins.datadog.DatadogEvent; import org.datadog.jenkins.plugins.datadog.DatadogGlobalConfiguration; import org.datadog.jenkins.plugins.datadog.DatadogUtilities; import org.datadog.jenkins.plugins.datadog.clients.ClientHolder; +import org.datadog.jenkins.plugins.datadog.configuration.DatadogClientConfiguration; import org.datadog.jenkins.plugins.datadog.events.BuildAbortedEventImpl; import org.datadog.jenkins.plugins.datadog.events.BuildFinishedEventImpl; import org.datadog.jenkins.plugins.datadog.events.BuildStartedEventImpl; import org.datadog.jenkins.plugins.datadog.metrics.Metrics; import org.datadog.jenkins.plugins.datadog.metrics.MetricsClient; import org.datadog.jenkins.plugins.datadog.model.*; +import org.datadog.jenkins.plugins.datadog.model.BuildData; +import org.datadog.jenkins.plugins.datadog.model.GitCommitAction; +import org.datadog.jenkins.plugins.datadog.model.GitRepositoryAction; +import org.datadog.jenkins.plugins.datadog.model.PipelineQueueInfoAction; +import org.datadog.jenkins.plugins.datadog.model.TraceInfoAction; import org.datadog.jenkins.plugins.datadog.traces.BuildSpanAction; import org.datadog.jenkins.plugins.datadog.traces.BuildSpanManager; import org.datadog.jenkins.plugins.datadog.traces.message.TraceSpan; @@ -50,18 +67,6 @@ of this software and associated documentation files (the "Software"), to deal import org.datadog.jenkins.plugins.datadog.util.SuppressFBWarnings; import org.jenkinsci.plugins.workflow.job.WorkflowRun; -import javax.annotation.Nonnull; -import java.io.IOException; -import java.util.Map; -import java.util.Set; -import java.util.concurrent.TimeUnit; -import java.util.logging.Logger; - -import static org.datadog.jenkins.plugins.datadog.DatadogUtilities.cleanUpTraceActions; -import static org.datadog.jenkins.plugins.datadog.traces.TracerConstants.SPAN_ID_ENVVAR_KEY; -import static org.datadog.jenkins.plugins.datadog.traces.TracerConstants.TRACE_ID_ENVVAR_KEY; - - /** * This class registers an {@link RunListener} to trigger events and calculate metrics: * - When a build initializes, the {@link #onInitialize(Run)} method will be invoked. @@ -362,6 +367,16 @@ public void onFinalized(Run run) { } BuildData buildData = BuildData.create(run, null); + + DatadogGlobalConfiguration datadogConfiguration = DatadogUtilities.getDatadogGlobalDescriptor(); + if (datadogConfiguration != null && datadogConfiguration.getEnableCiVisibility()) { + DatadogClientConfiguration clientConfiguration = datadogConfiguration.getDatadogClientConfiguration(); + String siteName = clientConfiguration.getSiteName(); + if (StringUtils.isNotBlank(siteName)) { + run.addAction(new DatadogLinkAction(buildData, siteName)); + } + } + traceWriter.submitBuild(buildData, run); logger.fine("End DatadogBuildListener#onFinalized"); diff --git a/src/main/java/org/datadog/jenkins/plugins/datadog/model/DatadogLinkAction.java b/src/main/java/org/datadog/jenkins/plugins/datadog/model/DatadogLinkAction.java new file mode 100644 index 00000000..12c4d4ba --- /dev/null +++ b/src/main/java/org/datadog/jenkins/plugins/datadog/model/DatadogLinkAction.java @@ -0,0 +1,70 @@ +package org.datadog.jenkins.plugins.datadog.model; + +import com.thoughtworks.xstream.XStream; +import com.thoughtworks.xstream.converters.MarshallingContext; +import com.thoughtworks.xstream.converters.UnmarshallingContext; +import com.thoughtworks.xstream.io.HierarchicalStreamReader; +import com.thoughtworks.xstream.io.HierarchicalStreamWriter; +import hudson.model.Action; +import org.datadog.jenkins.plugins.datadog.util.conversion.DatadogConverter; +import org.datadog.jenkins.plugins.datadog.util.conversion.VersionedConverter; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; + +import static org.datadog.jenkins.plugins.datadog.util.conversion.VersionedConverter.ignoreOldData; + +public class DatadogLinkAction implements Action { + + private final String url; + + public DatadogLinkAction(BuildData buildData, String siteName) { + String query = String.format("ci_level:pipeline @ci.pipeline.name:\"%s\" @ci.pipeline.number:%s", buildData.getJobName(), buildData.getBuildNumber("")); + String urlEncodedQuery = URLEncoder.encode(query, StandardCharsets.UTF_8); + this.url = String.format("https://app.%s/ci/pipeline-executions?query=%s", siteName, urlEncodedQuery); + } + + private DatadogLinkAction(String url) { + this.url = url; + } + + @Override + public String getIconFileName() { + return "/plugin/datadog/icons/dd_icon_rgb.svg"; + } + + @Override + public String getDisplayName() { + return "View in Datadog"; + } + + @Override + public String getUrlName() { + return url; + } + + public static final class ConverterImpl extends DatadogConverter { + public ConverterImpl(XStream xs) { + super(ignoreOldData(), new ConverterV1()); + } + } + + public static final class ConverterV1 extends VersionedConverter { + private static final int VERSION = 1; + + public ConverterV1() { + super(VERSION); + } + + @Override + public void marshal(DatadogLinkAction action, HierarchicalStreamWriter writer, MarshallingContext context) { + writeField("url", action.url, writer, context); + } + + @Override + public DatadogLinkAction unmarshal(HierarchicalStreamReader reader, UnmarshallingContext context) { + String url = readField(reader, context, String.class); + return new DatadogLinkAction(url); + } + } +} diff --git a/src/main/resources/org/datadog/jenkins/plugins/datadog/configuration/DatadogAgentConfiguration/config.jelly b/src/main/resources/org/datadog/jenkins/plugins/datadog/configuration/DatadogAgentConfiguration/config.jelly index 39b64252..20c6e789 100644 --- a/src/main/resources/org/datadog/jenkins/plugins/datadog/configuration/DatadogAgentConfiguration/config.jelly +++ b/src/main/resources/org/datadog/jenkins/plugins/datadog/configuration/DatadogAgentConfiguration/config.jelly @@ -25,4 +25,8 @@ method="checkTraceConnectivity" with="agentHost,agentTraceCollectionPort" /> + + + + diff --git a/src/main/resources/org/datadog/jenkins/plugins/datadog/configuration/DatadogAgentConfiguration/help-site.html b/src/main/resources/org/datadog/jenkins/plugins/datadog/configuration/DatadogAgentConfiguration/help-site.html new file mode 100644 index 00000000..dba2ad97 --- /dev/null +++ b/src/main/resources/org/datadog/jenkins/plugins/datadog/configuration/DatadogAgentConfiguration/help-site.html @@ -0,0 +1,4 @@ +
+ Select your Datadog site. + See Datadog documentation for more information about sites. +
diff --git a/src/main/webapp/icons/dd_icon_rgb.png b/src/main/webapp/icons/dd_icon_rgb.png new file mode 100644 index 0000000000000000000000000000000000000000..598771157afa6786bccb3dfdca9982d2316daabd GIT binary patch literal 74745 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 literal 0 HcmV?d00001 diff --git a/src/test/java/org/datadog/jenkins/plugins/datadog/apm/TracerInjectionIT.java b/src/test/java/org/datadog/jenkins/plugins/datadog/apm/TracerInjectionIT.java index a87fd21a..132c275b 100644 --- a/src/test/java/org/datadog/jenkins/plugins/datadog/apm/TracerInjectionIT.java +++ b/src/test/java/org/datadog/jenkins/plugins/datadog/apm/TracerInjectionIT.java @@ -1,5 +1,6 @@ package org.datadog.jenkins.plugins.datadog.apm; +import static org.datadog.jenkins.plugins.datadog.configuration.DatadogAgentConfiguration.DatadogAgentConfigurationDescriptor.*; import static org.datadog.jenkins.plugins.datadog.configuration.DatadogAgentConfiguration.DatadogAgentConfigurationDescriptor.getDefaultAgentHost; import static org.datadog.jenkins.plugins.datadog.configuration.DatadogAgentConfiguration.DatadogAgentConfigurationDescriptor.getDefaultAgentLogCollectionPort; import static org.datadog.jenkins.plugins.datadog.configuration.DatadogAgentConfiguration.DatadogAgentConfigurationDescriptor.getDefaultAgentPort; @@ -55,7 +56,7 @@ public static void suiteSetUp() throws Exception { // There is no agent and the injected tracers will fail to actually send anything, // but for the purposes of this test this is enough, since it is only asserted that the tracer initialisation was reported in the logs datadogConfig.setDatadogClientConfiguration(new DatadogAgentConfiguration( - getDefaultAgentHost(), getDefaultAgentPort(), getDefaultAgentLogCollectionPort(), getDefaultAgentTraceCollectionPort())); + getDefaultAgentHost(), getDefaultAgentPort(), getDefaultAgentLogCollectionPort(), getDefaultAgentTraceCollectionPort(), "")); agentNode = jenkinsRule.createOnlineSlave(); }