Skip to content

Commit 48924cb

Browse files
committed
Ability to disable the automatic Logback appender addition
1 parent 9eb7312 commit 48924cb

File tree

1 file changed

+14
-1
lines changed

1 file changed

+14
-1
lines changed

instrumentation/spring/spring-boot-autoconfigure/src/main/java/io/opentelemetry/instrumentation/spring/autoconfigure/instrumentation/logging/LogbackAppenderApplicationListener.java

+14-1
Original file line numberDiff line numberDiff line change
@@ -63,12 +63,25 @@ public void onApplicationEvent(ApplicationEvent event) {
6363
if (existingOpenTelemetryAppender.isPresent()) {
6464
reInitializeOpenTelemetryAppender(
6565
existingOpenTelemetryAppender, applicationEnvironmentPreparedEvent);
66-
} else {
66+
} else if (isLogbackAppenderAddable(applicationEnvironmentPreparedEvent)) {
6767
addOpenTelemetryAppender(applicationEnvironmentPreparedEvent);
6868
}
6969
}
7070
}
7171

72+
private static boolean isLogbackAppenderAddable(
73+
ApplicationEnvironmentPreparedEvent applicationEnvironmentPreparedEvent) {
74+
Boolean otelSdkDisableProperty =
75+
evaluateBooleanProperty(applicationEnvironmentPreparedEvent, "otel.sdk.disabled");
76+
Boolean logbackInstrumentationEnabledProperty =
77+
evaluateBooleanProperty(
78+
applicationEnvironmentPreparedEvent, "otel.instrumentation.logback-appender.enabled");
79+
return otelSdkDisableProperty == null
80+
|| !otelSdkDisableProperty.booleanValue()
81+
|| logbackInstrumentationEnabledProperty == null
82+
|| logbackInstrumentationEnabledProperty.booleanValue();
83+
}
84+
7285
private static void reInitializeOpenTelemetryAppender(
7386
Optional<OpenTelemetryAppender> existingOpenTelemetryAppender,
7487
ApplicationEnvironmentPreparedEvent applicationEnvironmentPreparedEvent) {

0 commit comments

Comments
 (0)