From 0e4f8f42419943df25e7722bce7f46cdc3136c62 Mon Sep 17 00:00:00 2001 From: Sreekanth Vadigi Date: Fri, 28 Nov 2025 17:35:45 +0530 Subject: [PATCH] query tags telemetry Signed-off-by: Sreekanth Vadigi --- .../databricks/jdbc/common/DatabricksJdbcConstants.java | 1 + .../jdbc/model/telemetry/DriverConnectionParameters.java | 9 +++++++++ .../com/databricks/jdbc/telemetry/TelemetryHelper.java | 4 +++- 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/databricks/jdbc/common/DatabricksJdbcConstants.java b/src/main/java/com/databricks/jdbc/common/DatabricksJdbcConstants.java index 139265a22..188fc5bdc 100644 --- a/src/main/java/com/databricks/jdbc/common/DatabricksJdbcConstants.java +++ b/src/main/java/com/databricks/jdbc/common/DatabricksJdbcConstants.java @@ -106,6 +106,7 @@ public final class DatabricksJdbcConstants { public static final String DEFAULT_HTTP_EXCEPTION_SQLSTATE = "08000"; public static final int TEMPORARY_REDIRECT_STATUS_CODE = 307; public static final String REDACTED_TOKEN = "****"; + public static final String QUERY_TAGS = "query_tags"; public static final int MAX_DEFAULT_STRING_COLUMN_LENGTH = 32767; public static final int DEFUALT_STRING_COLUMN_LENGTH = 255; public static final int DEFAULT_MAX_CONCURRENT_PRESIGNED_REQUESTS = 50; diff --git a/src/main/java/com/databricks/jdbc/model/telemetry/DriverConnectionParameters.java b/src/main/java/com/databricks/jdbc/model/telemetry/DriverConnectionParameters.java index c1c9fdf29..29132154d 100644 --- a/src/main/java/com/databricks/jdbc/model/telemetry/DriverConnectionParameters.java +++ b/src/main/java/com/databricks/jdbc/model/telemetry/DriverConnectionParameters.java @@ -136,6 +136,9 @@ public class DriverConnectionParameters { @JsonProperty("async_poll_interval_millis") int asyncPollIntervalMillis; + @JsonProperty("query_tags") + String queryTags; + public DriverConnectionParameters setHttpPath(String httpPath) { this.httpPath = httpPath; return this; @@ -356,6 +359,11 @@ public DriverConnectionParameters setAsyncPollIntervalMillis(int asyncPollInterv return this; } + public DriverConnectionParameters setQueryTags(String queryTags) { + this.queryTags = queryTags; + return this; + } + @Override public String toString() { return new ToStringer(DriverConnectionParameters.class) @@ -402,6 +410,7 @@ public String toString() { .add("useSystemTrustStore", useSystemTrustStore) .add("rowsFetchedPerBlock", rowsFetchedPerBlock) .add("asyncPollIntervalMillis", asyncPollIntervalMillis) + .add("queryTags", queryTags) .toString(); } } diff --git a/src/main/java/com/databricks/jdbc/telemetry/TelemetryHelper.java b/src/main/java/com/databricks/jdbc/telemetry/TelemetryHelper.java index eb921ebee..8c64278e6 100644 --- a/src/main/java/com/databricks/jdbc/telemetry/TelemetryHelper.java +++ b/src/main/java/com/databricks/jdbc/telemetry/TelemetryHelper.java @@ -1,5 +1,6 @@ package com.databricks.jdbc.telemetry; +import static com.databricks.jdbc.common.DatabricksJdbcConstants.QUERY_TAGS; import static com.databricks.jdbc.common.util.WildcardUtil.isNullOrEmpty; import com.databricks.jdbc.api.internal.IDatabricksConnectionContext; @@ -218,7 +219,8 @@ private static DriverConnectionParameters buildDriverConnectionParameters( .setRowsFetchedPerBlock(connectionContext.getRowsFetchedPerBlock()) .setAsyncPollIntervalMillis(connectionContext.getAsyncExecPollInterval()) .setEnableTokenCache(connectionContext.isTokenCacheEnabled()) - .setHttpPath(connectionContext.getHttpPath()); + .setHttpPath(connectionContext.getHttpPath()) + .setQueryTags(connectionContext.getSessionConfigs().get(QUERY_TAGS)); if (connectionContext.useJWTAssertion()) { connectionParameters .setEnableJwtAssertion(true)