Skip to content

Commit eddbb24

Browse files
Include tags in logs sent by DataDog listener
1 parent 1a181b3 commit eddbb24

File tree

1 file changed

+19
-5
lines changed

1 file changed

+19
-5
lines changed

jmeter-java-dsl-datadog/src/main/java/us/abstracta/jmeter/javadsl/datadog/DatadogBackendListener.java

Lines changed: 19 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
package us.abstracta.jmeter.javadsl.datadog;
22

33
import java.lang.reflect.Method;
4+
import java.net.URISyntaxException;
45
import java.util.List;
56
import java.util.Map;
7+
import org.apache.http.client.utils.URIBuilder;
68
import org.apache.jmeter.config.Arguments;
79
import org.datadog.jmeter.plugins.DatadogBackendClient;
810
import us.abstracta.jmeter.javadsl.codegeneration.MethodCall;
@@ -34,6 +36,7 @@ public class DatadogBackendListener extends DslBackendListener<DatadogBackendLis
3436
public DatadogBackendListener(String apiKey) {
3537
super(DatadogBackendClient.class, null);
3638
this.apiKey = apiKey;
39+
site(DatadogSite.US1);
3740
}
3841

3942
/**
@@ -113,16 +116,27 @@ public DatadogBackendListener tags(String... tags) {
113116
protected Arguments buildListenerArguments() {
114117
Arguments ret = new Arguments();
115118
ret.addArgument(API_KEY_ARG, apiKey);
116-
if (apiUrl != null) {
117-
ret.addArgument(API_URL_ARG, apiUrl);
118-
ret.addArgument(LOG_URL_ARG, logsUrl);
119-
}
119+
ret.addArgument(API_URL_ARG, apiUrl);
120+
ret.addArgument(LOG_URL_ARG, buildLogsUrl());
120121
ret.addArgument(RESULT_LOGS_ARG, String.valueOf(resultsAsLogs));
121122
ret.addArgument(TAGS_ARG, tags != null ? String.join(",", tags) : "");
122123
return ret;
123124
}
124125

125-
public static class CodeBuilder extends BackendListenerCodeBuilder {
126+
private String buildLogsUrl() {
127+
if (tags == null) {
128+
return logsUrl;
129+
}
130+
try {
131+
return new URIBuilder(logsUrl)
132+
.addParameter("ddtags", String.join(",", tags))
133+
.toString();
134+
} catch (URISyntaxException e) {
135+
throw new RuntimeException(e);
136+
}
137+
}
138+
139+
public static class CodeBuilder extends BackendListenerCodeBuilder {
126140

127141
public CodeBuilder(List<Method> builderMethods) {
128142
super(DatadogBackendClient.class, builderMethods);

0 commit comments

Comments
 (0)