@@ -43,7 +43,6 @@ import (
4343 "k8s.io/utils/ptr"
4444 csiMetrics "sigs.k8s.io/azurefile-csi-driver/pkg/metrics"
4545 azcache "sigs.k8s.io/cloud-provider-azure/pkg/cache"
46- "sigs.k8s.io/cloud-provider-azure/pkg/metrics"
4746 "sigs.k8s.io/cloud-provider-azure/pkg/provider/storage"
4847)
4948
@@ -527,14 +526,6 @@ func (d *Driver) CreateVolume(ctx context.Context, req *csi.CreateVolumeRequest)
527526 }
528527 }
529528
530- csiMC := csiMetrics .NewCSIMetricContext (requestName )
531- isOperationSucceeded := false
532- defer func () {
533- csiMC .ObserveWithLabels (isOperationSucceeded ,
534- "protocol" , string (shareProtocol ),
535- "storage_account_type" , sku )
536- }()
537-
538529 if sourceID != "" {
539530 _ , srcAccountName , _ , _ , _ , _ , err = GetFileShareInfo (sourceID ) //nolint:dogsled
540531 if err != nil {
@@ -583,9 +574,10 @@ func (d *Driver) CreateVolume(ctx context.Context, req *csi.CreateVolumeRequest)
583574 SourceAccountName : srcAccountName ,
584575 }
585576
586- mc := metrics .NewMetricContext (azureFileCSIDriverName , requestName , d .cloud .ResourceGroup , subsID , d .Name )
577+ mc := csiMetrics .NewCSIMetricContext (requestName ).WithBasicVolumeInfo (d .cloud .ResourceGroup , subsID , d .Name )
578+ isOperationSucceeded := false
587579 defer func () {
588- mc .ObserveOperationWithResult ( isOperationSucceeded , VolumeID , volumeID )
580+ mc .WithAdditionalVolumeInfo ( VolumeID , volumeID ). ObserveWithLabels ( isOperationSucceeded , csiMetrics . Protocol , string ( shareProtocol ), csiMetrics . StorageAccountType , sku )
589581 }()
590582
591583 var accountKey , lockKey string
@@ -807,12 +799,6 @@ func (d *Driver) CreateVolume(ctx context.Context, req *csi.CreateVolumeRequest)
807799
808800// DeleteVolume delete an azure file
809801func (d * Driver ) DeleteVolume (ctx context.Context , req * csi.DeleteVolumeRequest ) (resp * csi.DeleteVolumeResponse , returnedErr error ) {
810- requestName := "controller_delete_volume"
811- csiMC := csiMetrics .NewCSIMetricContext (requestName )
812- defer func () {
813- csiMC .Observe (returnedErr == nil )
814- }()
815-
816802 volumeID := req .GetVolumeId ()
817803 if len (volumeID ) == 0 {
818804 return nil , status .Error (codes .InvalidArgument , "Volume ID missing in request" )
@@ -857,9 +843,9 @@ func (d *Driver) DeleteVolume(ctx context.Context, req *csi.DeleteVolumeRequest)
857843 secret = createStorageAccountSecret (accountName , accountKey )
858844 }
859845
860- mc := metrics . NewMetricContext ( azureFileCSIDriverName , requestName , resourceGroupName , subsID , d .Name )
846+ mc := csiMetrics . NewCSIMetricContext ( "controller_delete_volume" ). WithBasicVolumeInfo ( resourceGroupName , subsID , d .Name )
861847 defer func () {
862- mc .ObserveOperationWithResult ( returnedErr == nil , VolumeID , volumeID )
848+ mc .WithAdditionalVolumeInfo ( VolumeID , volumeID ). Observe ( returnedErr == nil )
863849 }()
864850
865851 if err := d .DeleteFileShare (ctx , subsID , resourceGroupName , accountName , fileShareName , secret , useDataPlaneAPI ); err != nil {
@@ -966,12 +952,6 @@ func (d *Driver) ControllerUnpublishVolume(_ context.Context, _ *csi.ControllerU
966952
967953// CreateSnapshot create a snapshot
968954func (d * Driver ) CreateSnapshot (ctx context.Context , req * csi.CreateSnapshotRequest ) (resp * csi.CreateSnapshotResponse , returnedErr error ) {
969- requestName := "controller_create_snapshot"
970- csiMC := csiMetrics .NewCSIMetricContext (requestName )
971- defer func () {
972- csiMC .Observe (returnedErr == nil )
973- }()
974-
975955 sourceVolumeID := req .GetSourceVolumeId ()
976956 snapshotName := req .Name
977957 if len (snapshotName ) == 0 {
@@ -1009,9 +989,9 @@ func (d *Driver) CreateSnapshot(ctx context.Context, req *csi.CreateSnapshotRequ
1009989 useDataPlaneAPI = d .useDataPlaneAPI (ctx , sourceVolumeID , accountName )
1010990 }
1011991
1012- mc := metrics . NewMetricContext ( azureFileCSIDriverName , requestName , rgName , subsID , d .Name )
992+ mc := csiMetrics . NewCSIMetricContext ( "controller_create_snapshot" ). WithBasicVolumeInfo ( rgName , subsID , d .Name )
1013993 defer func () {
1014- mc .ObserveOperationWithResult ( returnedErr == nil , SourceResourceID , sourceVolumeID , SnapshotName , snapshotName )
994+ mc .WithAdditionalVolumeInfo ( SourceResourceID , sourceVolumeID , SnapshotName , snapshotName ). Observe ( returnedErr == nil )
1015995 }()
1016996
1017997 exists , itemSnapshot , itemSnapshotTime , itemSnapshotQuota , err := d .snapshotExists (ctx , sourceVolumeID , snapshotName , req .GetSecrets (), useDataPlaneAPI )
@@ -1121,13 +1101,6 @@ func (d *Driver) CreateSnapshot(ctx context.Context, req *csi.CreateSnapshotRequ
11211101
11221102// DeleteSnapshot delete a snapshot (todo)
11231103func (d * Driver ) DeleteSnapshot (ctx context.Context , req * csi.DeleteSnapshotRequest ) (* csi.DeleteSnapshotResponse , error ) {
1124- requestName := "controller_delete_snapshot"
1125- csiMC := csiMetrics .NewCSIMetricContext (requestName )
1126- isOperationSucceeded := false
1127- defer func () {
1128- csiMC .Observe (isOperationSucceeded )
1129- }()
1130-
11311104 if len (req .SnapshotId ) == 0 {
11321105 return nil , status .Error (codes .InvalidArgument , "Snapshot ID must be provided" )
11331106 }
@@ -1149,9 +1122,10 @@ func (d *Driver) DeleteSnapshot(ctx context.Context, req *csi.DeleteSnapshotRequ
11491122 subsID = d .cloud .SubscriptionID
11501123 }
11511124
1152- mc := metrics .NewMetricContext (azureFileCSIDriverName , requestName , rgName , subsID , d .Name )
1125+ mc := csiMetrics .NewCSIMetricContext ("controller_delete_snapshot" ).WithBasicVolumeInfo (rgName , subsID , d .Name )
1126+ isOperationSucceeded := false
11531127 defer func () {
1154- mc .ObserveOperationWithResult ( isOperationSucceeded , SnapshotID , req .SnapshotId )
1128+ mc .WithAdditionalVolumeInfo ( SnapshotID , req .SnapshotId ). Observe ( isOperationSucceeded )
11551129 }()
11561130
11571131 var deleteErr error
@@ -1319,13 +1293,6 @@ func (d *Driver) execAzcopyCopy(srcPath, dstPath string, azcopyCopyOptions, auth
13191293
13201294// ControllerExpandVolume controller expand volume
13211295func (d * Driver ) ControllerExpandVolume (ctx context.Context , req * csi.ControllerExpandVolumeRequest ) (* csi.ControllerExpandVolumeResponse , error ) {
1322- requestName := "controller_expand_volume"
1323- csiMC := csiMetrics .NewCSIMetricContext (requestName )
1324- isOperationSucceeded := false
1325- defer func () {
1326- csiMC .Observe (isOperationSucceeded )
1327- }()
1328-
13291296 volumeID := req .GetVolumeId ()
13301297 if len (volumeID ) == 0 {
13311298 return nil , status .Error (codes .InvalidArgument , "Volume ID missing in request" )
@@ -1364,9 +1331,10 @@ func (d *Driver) ControllerExpandVolume(ctx context.Context, req *csi.Controller
13641331 }
13651332 }
13661333
1367- mc := metrics .NewMetricContext (azureFileCSIDriverName , requestName , resourceGroupName , subsID , d .Name )
1334+ mc := csiMetrics .NewCSIMetricContext ("controller_expand_volume" ).WithBasicVolumeInfo (resourceGroupName , subsID , d .Name )
1335+ isOperationSucceeded := false
13681336 defer func () {
1369- mc .ObserveOperationWithResult ( isOperationSucceeded , VolumeID , volumeID )
1337+ mc .WithAdditionalVolumeInfo ( VolumeID , volumeID ). Observe ( isOperationSucceeded )
13701338 }()
13711339
13721340 secrets := req .GetSecrets ()
0 commit comments