Skip to content

Commit 4e44b39

Browse files
authored
Don't send IO failures to telemetry logs (#10210)
* Don't send IO failures to telemetry logs * adjust tests
1 parent ab0719e commit 4e44b39

2 files changed

Lines changed: 27 additions & 11 deletions

File tree

internal-api/src/main/java/datadog/trace/relocate/api/IOLogger.java

Lines changed: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package datadog.trace.relocate.api;
22

3+
import static datadog.trace.api.telemetry.LogCollector.EXCLUDE_TELEMETRY;
4+
35
import java.util.concurrent.TimeUnit;
46
import org.slf4j.Logger;
57

@@ -24,14 +26,14 @@ public IOLogger(final Logger log) {
2426
*/
2527
public boolean success(final String format, final Object... arguments) {
2628
if (log.isDebugEnabled()) {
27-
log.debug(format, arguments);
29+
log.debug(EXCLUDE_TELEMETRY, format, arguments);
2830
return true;
2931
}
3032

3133
if (this.logNextSuccess) {
3234
this.logNextSuccess = false;
3335
if (log.isInfoEnabled()) {
34-
log.info(format, arguments);
36+
log.info(EXCLUDE_TELEMETRY, format, arguments);
3537
return true;
3638
}
3739
}
@@ -67,29 +69,38 @@ public boolean error(final String message, Response response, Exception exceptio
6769
if (log.isDebugEnabled()) {
6870
if (response != null) {
6971
log.debug(
72+
EXCLUDE_TELEMETRY,
7073
"{} Status: {}, Response: {}, Body: {}",
7174
message,
7275
response.getStatusCode(),
7376
response.getMessage(),
7477
response.getBody());
7578
} else if (exception != null) {
76-
log.debug(message, exception);
79+
log.debug(EXCLUDE_TELEMETRY, message, exception);
7780
} else {
78-
log.debug(message);
81+
log.debug(EXCLUDE_TELEMETRY, message);
7982
}
8083
return true;
8184
}
8285
boolean hasLogged;
8386
if (response != null) {
8487
hasLogged =
8588
ratelimitedLogger.warn(
86-
"{} Status: {} {}", message, response.getStatusCode(), response.getMessage());
89+
EXCLUDE_TELEMETRY,
90+
"{} Status: {} {}",
91+
message,
92+
response.getStatusCode(),
93+
response.getMessage());
8794
} else if (exception != null) {
8895
// NOTE: We do not pass the full exception to warn on purpose. We don't want to
8996
// print a full stacktrace unless we're in debug mode
9097
hasLogged =
9198
ratelimitedLogger.warn(
92-
"{} {}: {}", message, exception.getClass().getName(), exception.getMessage());
99+
EXCLUDE_TELEMETRY,
100+
"{} {}: {}",
101+
message,
102+
exception.getClass().getName(),
103+
exception.getMessage());
93104
} else {
94105
hasLogged = ratelimitedLogger.warn(message);
95106
}

internal-api/src/test/groovy/datadog/trace/relocate/api/IOLoggerTest.groovy

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package datadog.trace.relocate.api
22

3+
import static datadog.trace.api.telemetry.LogCollector.EXCLUDE_TELEMETRY
4+
35
import datadog.trace.test.util.DDSpecification
46
import org.slf4j.Logger
57

@@ -21,7 +23,7 @@ class IOLoggerTest extends DDSpecification {
2123
ioLogger.success("test {}", "message")
2224

2325
then:
24-
1 * log.debug("test {}", "message")
26+
1 * log.debug(EXCLUDE_TELEMETRY, "test {}", "message")
2527
}
2628

2729
def "Success - Info level"() {
@@ -46,7 +48,7 @@ class IOLoggerTest extends DDSpecification {
4648
ioLogger.error("test message")
4749

4850
then:
49-
1 * log.debug("test message")
51+
1 * log.debug(EXCLUDE_TELEMETRY, "test message")
5052
}
5153

5254
def "Error - Debug level - Response"() {
@@ -59,6 +61,7 @@ class IOLoggerTest extends DDSpecification {
5961

6062
then:
6163
1 * log.debug(
64+
EXCLUDE_TELEMETRY,
6265
_,
6366
"test message",
6467
404,
@@ -76,7 +79,7 @@ class IOLoggerTest extends DDSpecification {
7679
ioLogger.error("test message", exception)
7780

7881
then:
79-
1 * log.debug(
82+
1 * log.debug(EXCLUDE_TELEMETRY,
8083
"test message",
8184
exception
8285
)
@@ -104,6 +107,7 @@ class IOLoggerTest extends DDSpecification {
104107

105108
then:
106109
1 * rateLimitedLogger.warn(
110+
EXCLUDE_TELEMETRY,
107111
_,
108112
"test message",
109113
404,
@@ -121,6 +125,7 @@ class IOLoggerTest extends DDSpecification {
121125

122126
then:
123127
1 * rateLimitedLogger.warn(
128+
EXCLUDE_TELEMETRY,
124129
_,
125130
"test message",
126131
"java.lang.RuntimeException",
@@ -140,8 +145,8 @@ class IOLoggerTest extends DDSpecification {
140145

141146
then:
142147
1 * rateLimitedLogger.warn("test message") >> true
143-
1 * log.info("very successful")
144-
0 * log.info("very successful again")
148+
1 * log.info(EXCLUDE_TELEMETRY,"very successful")
149+
0 * log.info(EXCLUDE_TELEMETRY,"very successful again")
145150
}
146151

147152
def "Unlogged Error Then Success - Info level"() {

0 commit comments

Comments
 (0)