From 7e2fec0b95b439f91b0b2c68bf2c1fb39f9b1197 Mon Sep 17 00:00:00 2001 From: Ben Bardin Date: Fri, 25 Oct 2024 12:39:05 -0400 Subject: [PATCH] [cloud/azure] Use account name for metrics Release note: none --- pkg/cloud/azure/BUILD.bazel | 1 + pkg/cloud/azure/azure_storage.go | 11 ++++++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/pkg/cloud/azure/BUILD.bazel b/pkg/cloud/azure/BUILD.bazel index faf25fd76fde..43b2345220a6 100644 --- a/pkg/cloud/azure/BUILD.bazel +++ b/pkg/cloud/azure/BUILD.bazel @@ -13,6 +13,7 @@ go_library( visibility = ["//visibility:public"], deps = [ "//pkg/base", + "//pkg/ccl/changefeedccl", "//pkg/cloud", "//pkg/cloud/cloudpb", "//pkg/cloud/externalconn", diff --git a/pkg/cloud/azure/azure_storage.go b/pkg/cloud/azure/azure_storage.go index 55cdb340afaf..4cbe8f3e82ef 100644 --- a/pkg/cloud/azure/azure_storage.go +++ b/pkg/cloud/azure/azure_storage.go @@ -22,6 +22,7 @@ import ( "github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/service" "github.com/Azure/go-autorest/autorest/azure" "github.com/cockroachdb/cockroach/pkg/base" + "github.com/cockroachdb/cockroach/pkg/ccl/changefeedccl" "github.com/cockroachdb/cockroach/pkg/cloud" "github.com/cockroachdb/cockroach/pkg/cloud/cloudpb" "github.com/cockroachdb/cockroach/pkg/server/telemetry" @@ -221,7 +222,15 @@ func makeAzureStorage( } options := args.ExternalStorageOptions() - t, err := cloud.MakeHTTPClient(args.Settings, args.MetricsRecorder, "azure", dest.AzureConfig.Container, options.ClientName) + bucket := dest.AzureConfig.Container + if changefeedccl.EnableCloudBillingAccounting { + // Azure is special in that its bucket names are not unique. So for + // the moment, Cloud needs to track Account Name, since it is in fact + // unique. We may eventually choose bucket names derived from the + // account name to ensure uniqueness and bypass this hack. + bucket = dest.AzureConfig.AccountName + } + t, err := cloud.MakeHTTPClient(args.Settings, args.MetricsRecorder, "azure", bucket, options.ClientName) if err != nil { return nil, errors.Wrap(err, "azure: unable to create transport") }