Skip to content

Commit 7680873

Browse files
authored
Merge pull request #7905 from DataDog/dougqh/crashtracking-adjust-timeout
Adjust crash upload timeout
2 parents 39c11f9 + f330e67 commit 7680873

File tree

3 files changed

+44
-26
lines changed

3 files changed

+44
-26
lines changed

dd-smoke-tests/crashtracking/build.gradle

+2
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,9 @@ jar {
1919
dependencies {
2020
testImplementation project(':dd-smoke-tests')
2121
testImplementation project(':dd-java-agent:agent-profiling:profiling-testing')
22+
2223
testImplementation libs.bundles.junit5
24+
testImplementation group: 'org.hamcrest', name: 'hamcrest', version: '2.1'
2325
testImplementation libs.bundles.mockito
2426
}
2527

dd-smoke-tests/crashtracking/src/test/java/datadog/smoketest/CrashtrackingSmokeTest.java

+41-25
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
package datadog.smoketest;
22

3+
import static org.hamcrest.CoreMatchers.containsString;
4+
import static org.hamcrest.MatcherAssert.assertThat;
35
import static org.junit.jupiter.api.Assertions.assertNotEquals;
4-
import static org.junit.jupiter.api.Assertions.assertTrue;
56
import static org.junit.jupiter.api.Assumptions.assumeFalse;
67

78
import datadog.trace.api.Platform;
@@ -23,6 +24,10 @@
2324
import org.junit.jupiter.api.BeforeEach;
2425
import org.junit.jupiter.api.Test;
2526

27+
/*
28+
* NOTE: The current implementation of crash tracking doesn't work with ancient version of bash
29+
* that ships with OS X by default.
30+
*/
2631
public class CrashtrackingSmokeTest {
2732
private MockWebServer tracingServer;
2833

@@ -76,6 +81,10 @@ private static String getExtension() {
7681
return Platform.isWindows() ? "bat" : "sh";
7782
}
7883

84+
/*
85+
* NOTE: The current implementation of crash tracking doesn't work with ancient version of bash
86+
* that ships with OS X by default.
87+
*/
7988
@Test
8089
void testCrashTracking() throws Exception {
8190
Path script = tempDir.resolve("dd_crash_uploader." + getExtension());
@@ -140,14 +149,17 @@ void testCrashTracking() throws Exception {
140149

141150
assertNotEquals(0, p.waitFor(), "Application should have crashed");
142151

143-
assertTrue(stdoutStr.toString().contains(" was uploaded successfully"));
144-
assertTrue(
145-
stderrStr
146-
.toString()
147-
.contains(
148-
"com.datadog.crashtracking.CrashUploader - Successfully uploaded the crash files"));
152+
assertThat(stdoutStr.toString(), containsString(" was uploaded successfully"));
153+
assertThat(
154+
stderrStr.toString(),
155+
containsString(
156+
"com.datadog.crashtracking.CrashUploader - Successfully uploaded the crash files"));
149157
}
150158

159+
/*
160+
* NOTE: The current implementation of crash tracking doesn't work with ancient version of bash
161+
* that ships with OS X by default.
162+
*/
151163
@Test
152164
void testCrashTrackingLegacy() throws Exception {
153165
Path script = tempDir.resolve("dd_crash_uploader." + getExtension());
@@ -212,14 +224,17 @@ void testCrashTrackingLegacy() throws Exception {
212224

213225
assertNotEquals(0, p.waitFor(), "Application should have crashed");
214226

215-
assertTrue(stdoutStr.toString().contains(" was uploaded successfully"));
216-
assertTrue(
217-
stderrStr
218-
.toString()
219-
.contains(
220-
"com.datadog.crashtracking.CrashUploader - Successfully uploaded the crash files"));
227+
assertThat(stdoutStr.toString(), containsString(" was uploaded successfully"));
228+
assertThat(
229+
stderrStr.toString(),
230+
containsString(
231+
"com.datadog.crashtracking.CrashUploader - Successfully uploaded the crash files"));
221232
}
222233

234+
/*
235+
* NOTE: The current implementation of crash tracking doesn't work with ancient version of bash
236+
* that ships with OS X by default.
237+
*/
223238
@Test
224239
void testOomeTracking() throws Exception {
225240
Path script = tempDir.resolve("dd_oome_notifier." + getExtension());
@@ -281,9 +296,10 @@ void testOomeTracking() throws Exception {
281296

282297
assertNotEquals(0, p.waitFor(), "Application should have crashed");
283298

284-
assertTrue(
285-
stderrStr.toString().contains("com.datadog.crashtracking.OOMENotifier - OOME event sent"));
286-
assertTrue(stdoutStr.toString().contains("OOME Event generated successfully"));
299+
assertThat(
300+
stderrStr.toString(),
301+
containsString("com.datadog.crashtracking.OOMENotifier - OOME event sent"));
302+
assertThat(stdoutStr.toString(), containsString("OOME Event generated successfully"));
287303
}
288304

289305
@Test
@@ -352,16 +368,16 @@ void testCombineTracking() throws Exception {
352368
assertNotEquals(0, p.waitFor(), "Application should have crashed");
353369

354370
// Crash uploader did get triggered
355-
assertTrue(stdoutStr.toString().contains(" was uploaded successfully"));
356-
assertTrue(
357-
stderrStr
358-
.toString()
359-
.contains(
360-
"com.datadog.crashtracking.CrashUploader - Successfully uploaded the crash files"));
371+
assertThat(stdoutStr.toString(), containsString(" was uploaded successfully"));
372+
assertThat(
373+
stderrStr.toString(),
374+
containsString(
375+
"com.datadog.crashtracking.CrashUploader - Successfully uploaded the crash files"));
361376

362377
// OOME notifier did get triggered
363-
assertTrue(
364-
stderrStr.toString().contains("com.datadog.crashtracking.OOMENotifier - OOME event sent"));
365-
assertTrue(stdoutStr.toString().contains("OOME Event generated successfully"));
378+
assertThat(
379+
stderrStr.toString(),
380+
containsString("com.datadog.crashtracking.OOMENotifier - OOME event sent"));
381+
assertThat(stdoutStr.toString(), containsString("OOME Event generated successfully"));
366382
}
367383
}

dd-trace-api/src/main/java/datadog/trace/api/config/CrashTrackingConfig.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ public final class CrashTrackingConfig {
1111
public static final String CRASH_TRACKING_TAGS = "crashtracking.tags";
1212

1313
public static final String CRASH_TRACKING_UPLOAD_TIMEOUT = "crashtracking.upload.timeout";
14-
public static final int CRASH_TRACKING_UPLOAD_TIMEOUT_DEFAULT = 30;
14+
public static final int CRASH_TRACKING_UPLOAD_TIMEOUT_DEFAULT = 2;
1515

1616
public static final String CRASH_TRACKING_PROXY_HOST = "crashtracking.proxy.host";
1717
public static final String CRASH_TRACKING_PROXY_PORT = "crashtracking.proxy.port";

0 commit comments

Comments
 (0)