Skip to content

Commit c457034

Browse files
committed
refactor: rename connection property EnableOpenTelemetry and remove "master-switch" logic
1 parent 27016c0 commit c457034

File tree

5 files changed

+33
-35
lines changed

5 files changed

+33
-35
lines changed

java-bigquery/google-cloud-bigquery-jdbc/src/main/java/com/google/cloud/bigquery/jdbc/BigQueryConnection.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,7 @@ public class BigQueryConnection extends BigQueryNoOpsConnection {
140140
Long connectionPoolSize;
141141
Long listenerPoolSize;
142142
String partnerToken;
143-
boolean enableOpenTelemetry;
143+
boolean enableDefaultTelemetryExporter;
144144
OpenTelemetry customOpenTelemetry;
145145
Tracer tracer = OpenTelemetry.noop().getTracer("");
146146

@@ -247,7 +247,7 @@ public class BigQueryConnection extends BigQueryNoOpsConnection {
247247
this.connectionPoolSize = ds.getConnectionPoolSize();
248248
this.listenerPoolSize = ds.getListenerPoolSize();
249249
this.partnerToken = ds.getPartnerToken();
250-
this.enableOpenTelemetry = ds.getEnableOpenTelemetry();
250+
this.enableDefaultTelemetryExporter = ds.getEnableDefaultTelemetryExporter();
251251
this.customOpenTelemetry = ds.getCustomOpenTelemetry();
252252

253253
this.headerProvider = createHeaderProvider();
@@ -944,8 +944,8 @@ private BigQuery getBigQueryConnection() {
944944

945945
OpenTelemetry openTelemetry =
946946
BigQueryJdbcOpenTelemetry.getOpenTelemetry(
947-
this.enableOpenTelemetry, this.customOpenTelemetry);
948-
if (this.enableOpenTelemetry) {
947+
this.enableDefaultTelemetryExporter, this.customOpenTelemetry);
948+
if (this.enableDefaultTelemetryExporter || this.customOpenTelemetry != null) {
949949
this.tracer = BigQueryJdbcOpenTelemetry.getTracer(openTelemetry);
950950
bigQueryOptions.setOpenTelemetryTracer(this.tracer);
951951
}

java-bigquery/google-cloud-bigquery-jdbc/src/main/java/com/google/cloud/bigquery/jdbc/BigQueryDriver.java

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
import com.google.cloud.bigquery.exception.BigQueryJdbcRuntimeException;
2121
import io.grpc.LoadBalancerRegistry;
2222
import io.grpc.internal.PickFirstLoadBalancerProvider;
23-
import io.opentelemetry.api.OpenTelemetry;
2423
import java.io.IOException;
2524
import java.sql.Connection;
2625
import java.sql.Driver;
@@ -123,10 +122,6 @@ public Connection connect(String url, Properties info) throws SQLException {
123122
try {
124123
if (acceptsURL(url)) {
125124
Properties connectInfo = info == null ? new Properties() : (Properties) info.clone();
126-
OpenTelemetry customOpenTelemetry = null;
127-
if (connectInfo.containsKey("customOpenTelemetry")) {
128-
customOpenTelemetry = (OpenTelemetry) connectInfo.remove("customOpenTelemetry");
129-
}
130125
String connectionUri =
131126
BigQueryJdbcUrlUtility.appendPropertiesToURL(
132127
url.substring(5), this.toString(), connectInfo);
@@ -137,7 +132,6 @@ public Connection connect(String url, Properties info) throws SQLException {
137132
}
138133

139134
DataSource ds = DataSource.fromUrl(connectionUri);
140-
ds.setCustomOpenTelemetry(customOpenTelemetry);
141135

142136
// LogLevel
143137
String logLevelStr = ds.getLogLevel();

java-bigquery/google-cloud-bigquery-jdbc/src/main/java/com/google/cloud/bigquery/jdbc/BigQueryJdbcOpenTelemetry.java

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -26,19 +26,20 @@ public class BigQueryJdbcOpenTelemetry {
2626

2727
/**
2828
* Initializes or returns the OpenTelemetry instance based on hybrid logic. Prefer
29-
* GlobalOpenTelemetry; fallback to an auto-configured GCP exporter if requested.
29+
* customOpenTelemetry if provided; fallback to an auto-configured GCP exporter if requested.
3030
*/
3131
public static OpenTelemetry getOpenTelemetry(
32-
boolean enableOpenTelemetry, OpenTelemetry customOpenTelemetry) {
33-
if (!enableOpenTelemetry) {
34-
return OpenTelemetry.noop();
35-
}
36-
32+
boolean enableDefaultTelemetryExporter, OpenTelemetry customOpenTelemetry) {
3733
if (customOpenTelemetry != null) {
3834
return customOpenTelemetry;
3935
}
4036

41-
return GlobalOpenTelemetry.get();
37+
if (enableDefaultTelemetryExporter) {
38+
// TODO(b/491245568): Initialize and return GCP-specific auto-configured SDK
39+
return GlobalOpenTelemetry.get();
40+
}
41+
42+
return OpenTelemetry.noop();
4243
}
4344

4445
/** Gets a Tracer for the JDBC driver instrumentation scope. */

java-bigquery/google-cloud-bigquery-jdbc/src/main/java/com/google/cloud/bigquery/jdbc/BigQueryJdbcUrlUtility.java

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -162,8 +162,9 @@ protected boolean removeEldestEntry(Map.Entry<String, Map<String, String>> eldes
162162
static final int DEFAULT_SWA_APPEND_ROW_COUNT_VALUE = 1000;
163163
static final String SWA_ACTIVATION_ROW_COUNT_PROPERTY_NAME = "SWA_ActivationRowCount";
164164
static final int DEFAULT_SWA_ACTIVATION_ROW_COUNT_VALUE = 3;
165-
static final String ENABLE_OPENTELEMETRY_PROPERTY_NAME = "EnableOpenTelemetry";
166-
static final boolean DEFAULT_ENABLE_OPENTELEMETRY_VALUE = false;
165+
static final String ENABLE_DEFAULT_TELEMETRY_EXPORTER_PROPERTY_NAME =
166+
"enableDefaultTelemetryExporter";
167+
static final boolean DEFAULT_ENABLE_DEFAULT_TELEMETRY_EXPORTER_VALUE = false;
167168
private static final BigQueryJdbcCustomLogger LOG =
168169
new BigQueryJdbcCustomLogger(BigQueryJdbcUrlUtility.class.getName());
169170
static final String FILTER_TABLES_ON_DEFAULT_DATASET_PROPERTY_NAME =
@@ -611,10 +612,11 @@ protected boolean removeEldestEntry(Map.Entry<String, Map<String, String>> eldes
611612
+ " header.")
612613
.build(),
613614
BigQueryConnectionProperty.newBuilder()
614-
.setName(ENABLE_OPENTELEMETRY_PROPERTY_NAME)
615+
.setName(ENABLE_DEFAULT_TELEMETRY_EXPORTER_PROPERTY_NAME)
615616
.setDescription(
616-
"Enables or disables OpenTelemetry features in the Driver. Disabled by default.")
617-
.setDefaultValue(String.valueOf(DEFAULT_ENABLE_OPENTELEMETRY_VALUE))
617+
"Enables or disables default OpenTelemetry exporters in the Driver. Disabled by default.")
618+
.setDefaultValue(
619+
String.valueOf(DEFAULT_ENABLE_DEFAULT_TELEMETRY_EXPORTER_VALUE))
618620
.build())));
619621

620622
private static final List<String> NETWORK_PROPERTIES =

java-bigquery/google-cloud-bigquery-jdbc/src/main/java/com/google/cloud/bigquery/jdbc/DataSource.java

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ public class DataSource implements javax.sql.DataSource {
114114
private String privateServiceConnect;
115115
private Long connectionPoolSize;
116116
private Long listenerPoolSize;
117-
private Boolean enableOpenTelemetry;
117+
private Boolean enableDefaultTelemetryExporter;
118118
private OpenTelemetry customOpenTelemetry;
119119

120120
// Make sure the JDBC driver class is loaded.
@@ -328,11 +328,12 @@ public class DataSource implements javax.sql.DataSource {
328328
BigQueryJdbcUrlUtility.LISTENER_POOL_SIZE_PROPERTY_NAME,
329329
(ds, val) -> ds.setListenerPoolSize(Long.parseLong(val)))
330330
.put(
331-
BigQueryJdbcUrlUtility.ENABLE_OPENTELEMETRY_PROPERTY_NAME,
331+
BigQueryJdbcUrlUtility.ENABLE_DEFAULT_TELEMETRY_EXPORTER_PROPERTY_NAME,
332332
(ds, val) ->
333-
ds.setEnableOpenTelemetry(
333+
ds.setEnableDefaultTelemetryExporter(
334334
BigQueryJdbcUrlUtility.convertIntToBoolean(
335-
val, BigQueryJdbcUrlUtility.ENABLE_OPENTELEMETRY_PROPERTY_NAME)))
335+
val,
336+
BigQueryJdbcUrlUtility.ENABLE_DEFAULT_TELEMETRY_EXPORTER_PROPERTY_NAME)))
336337
.build();
337338

338339
public static DataSource fromUrl(String url) {
@@ -629,10 +630,10 @@ private Properties createProperties() {
629630
BigQueryJdbcUrlUtility.LISTENER_POOL_SIZE_PROPERTY_NAME,
630631
String.valueOf(this.listenerPoolSize));
631632
}
632-
if (this.enableOpenTelemetry != null) {
633+
if (this.enableDefaultTelemetryExporter != null) {
633634
connectionProperties.setProperty(
634-
BigQueryJdbcUrlUtility.ENABLE_OPENTELEMETRY_PROPERTY_NAME,
635-
String.valueOf(this.enableOpenTelemetry));
635+
BigQueryJdbcUrlUtility.ENABLE_DEFAULT_TELEMETRY_EXPORTER_PROPERTY_NAME,
636+
String.valueOf(this.enableDefaultTelemetryExporter));
636637
}
637638
return connectionProperties;
638639
}
@@ -755,14 +756,14 @@ public void setListenerPoolSize(Long listenerPoolSize) {
755756
this.listenerPoolSize = listenerPoolSize;
756757
}
757758

758-
public Boolean getEnableOpenTelemetry() {
759-
return enableOpenTelemetry != null
760-
? enableOpenTelemetry
761-
: BigQueryJdbcUrlUtility.DEFAULT_ENABLE_OPENTELEMETRY_VALUE;
759+
public Boolean getEnableDefaultTelemetryExporter() {
760+
return enableDefaultTelemetryExporter != null
761+
? enableDefaultTelemetryExporter
762+
: BigQueryJdbcUrlUtility.DEFAULT_ENABLE_DEFAULT_TELEMETRY_EXPORTER_VALUE;
762763
}
763764

764-
public void setEnableOpenTelemetry(Boolean enableOpenTelemetry) {
765-
this.enableOpenTelemetry = enableOpenTelemetry;
765+
public void setEnableDefaultTelemetryExporter(Boolean enableDefaultTelemetryExporter) {
766+
this.enableDefaultTelemetryExporter = enableDefaultTelemetryExporter;
766767
}
767768

768769
public OpenTelemetry getCustomOpenTelemetry() {

0 commit comments

Comments
 (0)