diff --git a/google-cloud-firestore/src/main/java/com/google/cloud/firestore/FirestoreOptions.java b/google-cloud-firestore/src/main/java/com/google/cloud/firestore/FirestoreOptions.java index b80b9dacd..280774e93 100644 --- a/google-cloud-firestore/src/main/java/com/google/cloud/firestore/FirestoreOptions.java +++ b/google-cloud-firestore/src/main/java/com/google/cloud/firestore/FirestoreOptions.java @@ -127,6 +127,7 @@ com.google.cloud.firestore.telemetry.TraceUtil getTraceUtil() { return traceUtil; } + @InternalApi @BetaApi @Nonnull public FirestoreOpenTelemetryOptions getOpenTelemetryOptions() { @@ -223,6 +224,7 @@ public Builder setDatabaseId(@Nonnull String databaseId) { * * @param openTelemetryOptions The `FirestoreOpenTelemetryOptions` to use. */ + @InternalApi @BetaApi @Nonnull public Builder setOpenTelemetryOptions( diff --git a/google-cloud-firestore/src/main/java/com/google/cloud/firestore/telemetry/TraceUtil.java b/google-cloud-firestore/src/main/java/com/google/cloud/firestore/telemetry/TraceUtil.java index e28e5b16c..00371f3db 100644 --- a/google-cloud-firestore/src/main/java/com/google/cloud/firestore/telemetry/TraceUtil.java +++ b/google-cloud-firestore/src/main/java/com/google/cloud/firestore/telemetry/TraceUtil.java @@ -25,6 +25,7 @@ import javax.annotation.Nullable; public interface TraceUtil { + static final boolean TRACING_FEATURE_ENABLED = false; String ATTRIBUTE_SERVICE_PREFIX = "gcp.firestore."; String SPAN_NAME_DOC_REF_CREATE = "DocumentReference.Create"; String SPAN_NAME_DOC_REF_SET = "DocumentReference.Set"; @@ -62,6 +63,11 @@ public interface TraceUtil { * @return An instance of the TraceUtil class. */ static TraceUtil getInstance(@Nonnull FirestoreOptions firestoreOptions) { + // TODO(tracing): Remove this to enable the feature. + if (!TRACING_FEATURE_ENABLED) { + return new DisabledTraceUtil(); + } + boolean createEnabledInstance = firestoreOptions.getOpenTelemetryOptions().isTracingEnabled(); // The environment variable can override options to enable/disable telemetry collection. diff --git a/google-cloud-firestore/src/test/java/com/google/cloud/firestore/OpenTelemetryOptionsTest.java b/google-cloud-firestore/src/test/java/com/google/cloud/firestore/OpenTelemetryOptionsTest.java index 267020761..b3bd57958 100644 --- a/google-cloud-firestore/src/test/java/com/google/cloud/firestore/OpenTelemetryOptionsTest.java +++ b/google-cloud-firestore/src/test/java/com/google/cloud/firestore/OpenTelemetryOptionsTest.java @@ -26,8 +26,11 @@ import javax.annotation.Nullable; import org.junit.After; import org.junit.Before; +import org.junit.Ignore; import org.junit.Test; +// TODO(tracing): Re-enable this test when the tracing feature is enabled. +@Ignore public class OpenTelemetryOptionsTest { @Nullable private Firestore firestore; diff --git a/google-cloud-firestore/src/test/java/com/google/cloud/firestore/it/ITE2ETracingTestGlobalOtel.java b/google-cloud-firestore/src/test/java/com/google/cloud/firestore/it/ITE2ETracingTestGlobalOtel.java index 85bfb5437..832fc3f01 100644 --- a/google-cloud-firestore/src/test/java/com/google/cloud/firestore/it/ITE2ETracingTestGlobalOtel.java +++ b/google-cloud-firestore/src/test/java/com/google/cloud/firestore/it/ITE2ETracingTestGlobalOtel.java @@ -15,10 +15,12 @@ */ package com.google.cloud.firestore.it; +import org.junit.Ignore; import org.junit.runner.RunWith; import org.junit.runners.JUnit4; @RunWith(JUnit4.class) +@Ignore public class ITE2ETracingTestGlobalOtel extends ITE2ETracingTest { @Override protected boolean isUsingGlobalOpenTelemetrySDK() { diff --git a/google-cloud-firestore/src/test/java/com/google/cloud/firestore/it/ITE2ETracingTestNonGlobalOtel.java b/google-cloud-firestore/src/test/java/com/google/cloud/firestore/it/ITE2ETracingTestNonGlobalOtel.java index 21272ff2e..b43b59896 100644 --- a/google-cloud-firestore/src/test/java/com/google/cloud/firestore/it/ITE2ETracingTestNonGlobalOtel.java +++ b/google-cloud-firestore/src/test/java/com/google/cloud/firestore/it/ITE2ETracingTestNonGlobalOtel.java @@ -15,10 +15,12 @@ */ package com.google.cloud.firestore.it; +import org.junit.Ignore; import org.junit.runner.RunWith; import org.junit.runners.JUnit4; @RunWith(JUnit4.class) +@Ignore public class ITE2ETracingTestNonGlobalOtel extends ITE2ETracingTest { @Override protected boolean isUsingGlobalOpenTelemetrySDK() { diff --git a/google-cloud-firestore/src/test/java/com/google/cloud/firestore/it/ITTracingTestGlobalOtel.java b/google-cloud-firestore/src/test/java/com/google/cloud/firestore/it/ITTracingTestGlobalOtel.java index 89495ed50..3147e32b6 100644 --- a/google-cloud-firestore/src/test/java/com/google/cloud/firestore/it/ITTracingTestGlobalOtel.java +++ b/google-cloud-firestore/src/test/java/com/google/cloud/firestore/it/ITTracingTestGlobalOtel.java @@ -15,10 +15,12 @@ */ package com.google.cloud.firestore.it; +import org.junit.Ignore; import org.junit.runner.RunWith; import org.junit.runners.JUnit4; @RunWith(JUnit4.class) +@Ignore public class ITTracingTestGlobalOtel extends ITTracingTest { @Override protected boolean isUsingGlobalOpenTelemetrySDK() { diff --git a/google-cloud-firestore/src/test/java/com/google/cloud/firestore/it/ITTracingTestNonGlobalOtel.java b/google-cloud-firestore/src/test/java/com/google/cloud/firestore/it/ITTracingTestNonGlobalOtel.java index 490b68b50..711c540c3 100644 --- a/google-cloud-firestore/src/test/java/com/google/cloud/firestore/it/ITTracingTestNonGlobalOtel.java +++ b/google-cloud-firestore/src/test/java/com/google/cloud/firestore/it/ITTracingTestNonGlobalOtel.java @@ -15,10 +15,12 @@ */ package com.google.cloud.firestore.it; +import org.junit.Ignore; import org.junit.runner.RunWith; import org.junit.runners.JUnit4; @RunWith(JUnit4.class) +@Ignore public class ITTracingTestNonGlobalOtel extends ITTracingTest { @Override protected boolean isUsingGlobalOpenTelemetrySDK() { diff --git a/google-cloud-firestore/src/test/java/com/google/cloud/firestore/telemetry/TraceUtilTest.java b/google-cloud-firestore/src/test/java/com/google/cloud/firestore/telemetry/TraceUtilTest.java index 5bb3be668..03752bd7f 100644 --- a/google-cloud-firestore/src/test/java/com/google/cloud/firestore/telemetry/TraceUtilTest.java +++ b/google-cloud-firestore/src/test/java/com/google/cloud/firestore/telemetry/TraceUtilTest.java @@ -56,6 +56,10 @@ public void tracingEnabledOptionsUseEnabledTraceUtil() { .setOpenTelemetryOptions( FirestoreOpenTelemetryOptions.newBuilder().setTracingEnabled(true).build()) .build()); - assertThat(traceUtil instanceof EnabledTraceUtil).isTrue(); + + // This is currently disabled because the feature is disabled as a whole. + // TODO (tracing): This should be `traceUtil instanceof EnabledTraceUtil + // once the feature is enabled. + assertThat(traceUtil instanceof DisabledTraceUtil).isTrue(); } }