Skip to content

Commit 3c45d27

Browse files
authored
feat: add option for disabling native metrics (#323)
Adds a connection string option for disabling native metrics. Adding 'disableNativeMetrics=true'to the connection string will create a client config with native metrics disabled. Fixes #310
1 parent 598b4b0 commit 3c45d27

File tree

2 files changed

+8
-1
lines changed

2 files changed

+8
-1
lines changed

driver.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -282,6 +282,11 @@ func newConnector(d *Driver, dsn string) (*connector, error) {
282282
config.EnableEndToEndTracing = val
283283
}
284284
}
285+
if strval, ok := connectorConfig.params["disablenativemetrics"]; ok {
286+
if val, err := strconv.ParseBool(strval); err == nil {
287+
config.DisableNativeMetrics = val
288+
}
289+
}
285290
config.UserAgent = userAgent
286291

287292
c := &connector{

driver_test.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -158,7 +158,7 @@ func TestExtractDnsParts(t *testing.T) {
158158
},
159159
},
160160
{
161-
input: "spanner.googleapis.com/projects/p/instances/i/databases/d?minSessions=200;maxSessions=1000;numChannels=10;disableRouteToLeader=true;enableEndToEndTracing=true;rpcPriority=Medium;optimizerVersion=1;optimizerStatisticsPackage=latest;databaseRole=child",
161+
input: "spanner.googleapis.com/projects/p/instances/i/databases/d?minSessions=200;maxSessions=1000;numChannels=10;disableRouteToLeader=true;enableEndToEndTracing=true;disableNativeMetrics=true;rpcPriority=Medium;optimizerVersion=1;optimizerStatisticsPackage=latest;databaseRole=child",
162162
wantConnectorConfig: connectorConfig{
163163
host: "spanner.googleapis.com",
164164
project: "p",
@@ -170,6 +170,7 @@ func TestExtractDnsParts(t *testing.T) {
170170
"numchannels": "10",
171171
"disableroutetoleader": "true",
172172
"enableendtoendtracing": "true",
173+
"disablenativemetrics": "true",
173174
"rpcpriority": "Medium",
174175
"optimizerversion": "1",
175176
"optimizerstatisticspackage": "latest",
@@ -191,6 +192,7 @@ func TestExtractDnsParts(t *testing.T) {
191192
UserAgent: userAgent,
192193
DisableRouteToLeader: true,
193194
EnableEndToEndTracing: true,
195+
DisableNativeMetrics: true,
194196
QueryOptions: spanner.QueryOptions{Priority: spannerpb.RequestOptions_PRIORITY_MEDIUM, Options: &spannerpb.ExecuteSqlRequest_QueryOptions{OptimizerVersion: "1", OptimizerStatisticsPackage: "latest"}},
195197
ReadOptions: spanner.ReadOptions{Priority: spannerpb.RequestOptions_PRIORITY_MEDIUM},
196198
TransactionOptions: spanner.TransactionOptions{CommitPriority: spannerpb.RequestOptions_PRIORITY_MEDIUM},

0 commit comments

Comments
 (0)