Skip to content

Commit ba23ef3

Browse files
committed
Address comments
1 parent d32101e commit ba23ef3

File tree

5 files changed

+21
-5
lines changed

5 files changed

+21
-5
lines changed

dd-java-agent/instrumentation/log4j/log4j-2.0/src/main/java/datadog/trace/instrumentation/log4j2/LoggerConfigInstrumentation.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ public LoggerConfigInstrumentation() {
2626
public boolean isApplicable(Set<TargetSystem> enabledSystems) {
2727
return (super.isApplicable(enabledSystems)
2828
&& InstrumenterConfig.get().isAgentlessLogSubmissionEnabled())
29-
|| Config.get().isAppLogsCollectionEnabled();
29+
|| InstrumenterConfig.get().isAppLogsCollectionEnabled();
3030
}
3131

3232
@Override

dd-java-agent/instrumentation/logback-1.0/src/main/java/datadog/trace/instrumentation/logback/LogbackLoggerInstrumentation.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import datadog.trace.agent.tooling.Instrumenter;
2020
import datadog.trace.agent.tooling.InstrumenterModule;
2121
import datadog.trace.api.Config;
22+
import datadog.trace.api.InstrumenterConfig;
2223
import datadog.trace.bootstrap.InstrumentationContext;
2324
import datadog.trace.bootstrap.instrumentation.api.AgentSpan;
2425
import datadog.trace.bootstrap.instrumentation.api.AgentSpanContext;
@@ -64,7 +65,7 @@ public void methodAdvice(MethodTransformer transformer) {
6465
.and(takesArguments(1))
6566
.and(takesArgument(0, named("ch.qos.logback.classic.spi.ILoggingEvent"))),
6667
LogbackLoggerInstrumentation.class.getName() + "$CallAppendersAdvice");
67-
if (Config.get().isAppLogsCollectionEnabled()) {
68+
if (InstrumenterConfig.get().isAppLogsCollectionEnabled()) {
6869
transformer.applyAdvice(
6970
isMethod()
7071
.and(isPublic())
@@ -76,7 +77,7 @@ public void methodAdvice(MethodTransformer transformer) {
7677
}
7778

7879
public static class CallAppendersAdvice {
79-
@Advice.OnMethodEnter
80+
@Advice.OnMethodEnter(suppress = Throwable.class)
8081
public static void onEnter(@Advice.Argument(0) ILoggingEvent event) {
8182
AgentSpan span = activeSpan();
8283

@@ -88,7 +89,7 @@ public static void onEnter(@Advice.Argument(0) ILoggingEvent event) {
8889
}
8990

9091
public static class CallAppendersAdvice2 {
91-
@Advice.OnMethodEnter
92+
@Advice.OnMethodEnter(suppress = Throwable.class)
9293
public static void onEnter(@Advice.Argument(0) ILoggingEvent event) {
9394
LogsIntakeHelper.log(event);
9495
}

dd-trace-api/src/main/java/datadog/trace/api/ConfigDefaults.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,8 @@ public final class ConfigDefaults {
122122
// value to false if config is under breaking changes flag
123123
static final boolean DEFAULT_LOGS_INJECTION_ENABLED = true;
124124

125+
static final boolean DEFAULT_APP_LOGS_COLLECTION_ENABLED = false;
126+
125127
static final String DEFAULT_APPSEC_ENABLED = "inactive";
126128
static final boolean DEFAULT_APPSEC_REPORTING_INBAND = false;
127129
static final int DEFAULT_APPSEC_TRACE_RATE_LIMIT = 100;

internal-api/src/main/java/datadog/trace/api/Config.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
import static datadog.trace.api.ConfigDefaults.DEFAULT_APPSEC_TRACE_RATE_LIMIT;
2121
import static datadog.trace.api.ConfigDefaults.DEFAULT_APPSEC_WAF_METRICS;
2222
import static datadog.trace.api.ConfigDefaults.DEFAULT_APPSEC_WAF_TIMEOUT;
23+
import static datadog.trace.api.ConfigDefaults.DEFAULT_APP_LOGS_COLLECTION_ENABLED;
2324
import static datadog.trace.api.ConfigDefaults.DEFAULT_CASSANDRA_KEYSPACE_STATEMENT_EXTRACTION_ENABLED;
2425
import static datadog.trace.api.ConfigDefaults.DEFAULT_CIVISIBILITY_AGENTLESS_ENABLED;
2526
import static datadog.trace.api.ConfigDefaults.DEFAULT_CIVISIBILITY_AUTO_CONFIGURATION_ENABLED;
@@ -1864,7 +1865,8 @@ private Config(final ConfigProvider configProvider, final InstrumenterConfig ins
18641865
configProvider.getBoolean(
18651866
LOGS_INJECTION_ENABLED, DEFAULT_LOGS_INJECTION_ENABLED, LOGS_INJECTION);
18661867
}
1867-
appLogsCollectionEnabled = configProvider.getBoolean(APP_LOGS_COLLECTION_ENABLED, false);
1868+
appLogsCollectionEnabled =
1869+
configProvider.getBoolean(APP_LOGS_COLLECTION_ENABLED, DEFAULT_APP_LOGS_COLLECTION_ENABLED);
18681870

18691871
dogStatsDNamedPipe = configProvider.getString(DOGSTATSD_NAMED_PIPE);
18701872

internal-api/src/main/java/datadog/trace/api/InstrumenterConfig.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import static datadog.trace.api.ConfigDefaults.DEFAULT_API_SECURITY_ENDPOINT_COLLECTION_ENABLED;
44
import static datadog.trace.api.ConfigDefaults.DEFAULT_APPSEC_ENABLED;
5+
import static datadog.trace.api.ConfigDefaults.DEFAULT_APP_LOGS_COLLECTION_ENABLED;
56
import static datadog.trace.api.ConfigDefaults.DEFAULT_CIVISIBILITY_ENABLED;
67
import static datadog.trace.api.ConfigDefaults.DEFAULT_CODE_ORIGIN_FOR_SPANS_ENABLED;
78
import static datadog.trace.api.ConfigDefaults.DEFAULT_DATA_JOBS_ENABLED;
@@ -27,6 +28,7 @@
2728
import static datadog.trace.api.config.AppSecConfig.APPSEC_ENABLED;
2829
import static datadog.trace.api.config.CiVisibilityConfig.CIVISIBILITY_ENABLED;
2930
import static datadog.trace.api.config.GeneralConfig.AGENTLESS_LOG_SUBMISSION_ENABLED;
31+
import static datadog.trace.api.config.GeneralConfig.APP_LOGS_COLLECTION_ENABLED;
3032
import static datadog.trace.api.config.GeneralConfig.DATA_JOBS_ENABLED;
3133
import static datadog.trace.api.config.GeneralConfig.INTERNAL_EXIT_ON_FAILURE;
3234
import static datadog.trace.api.config.GeneralConfig.TELEMETRY_ENABLED;
@@ -206,6 +208,8 @@ public class InstrumenterConfig {
206208
private final boolean agentlessLogSubmissionEnabled;
207209
private final boolean apiSecurityEndpointCollectionEnabled;
208210

211+
private final boolean appLogsCollectionEnabled;
212+
209213
static {
210214
// Bind telemetry collector to config module before initializing ConfigProvider
211215
OtelEnvMetricCollectorProvider.register(OtelEnvMetricCollectorImpl.getInstance());
@@ -351,6 +355,9 @@ private InstrumenterConfig() {
351355
configProvider.getBoolean(
352356
API_SECURITY_ENDPOINT_COLLECTION_ENABLED,
353357
DEFAULT_API_SECURITY_ENDPOINT_COLLECTION_ENABLED);
358+
359+
appLogsCollectionEnabled =
360+
configProvider.getBoolean(APP_LOGS_COLLECTION_ENABLED, DEFAULT_APP_LOGS_COLLECTION_ENABLED);
354361
}
355362

356363
public boolean isCodeOriginEnabled() {
@@ -658,6 +665,10 @@ public boolean isApiSecurityEndpointCollectionEnabled() {
658665
return apiSecurityEndpointCollectionEnabled;
659666
}
660667

668+
public boolean isAppLogsCollectionEnabled() {
669+
return appLogsCollectionEnabled;
670+
}
671+
661672
// This has to be placed after all other static fields to give them a chance to initialize
662673
private static final InstrumenterConfig INSTANCE =
663674
new InstrumenterConfig(

0 commit comments

Comments
 (0)