@@ -330,8 +330,9 @@ func applyServerGroupID(opts servers.CreateOptsBuilder, serverGroupID string) se
330
330
}
331
331
332
332
func (s * Service ) getTrunkSupport () (bool , error ) {
333
+ mc := metrics .NewMetricPrometheusContext ("network_extension" , "list" )
333
334
allPages , err := netext .List (s .networkClient ).AllPages ()
334
- if err != nil {
335
+ if mc . ObserveRequest ( err ) != nil {
335
336
return false , err
336
337
}
337
338
@@ -357,8 +358,9 @@ func (s *Service) getSecurityGroups(securityGroupParams []infrav1.SecurityGroupP
357
358
}
358
359
listOpts .Name = sg .Name
359
360
listOpts .ID = sg .UUID
361
+ mc := metrics .NewMetricPrometheusContext ("security_group" , "list" )
360
362
pages , err := groups .List (s .networkClient , listOpts ).AllPages ()
361
- if err != nil {
363
+ if mc . ObserveRequest ( err ) != nil {
362
364
return nil , err
363
365
}
364
366
@@ -422,11 +424,12 @@ func (s *Service) getServerNetworks(networkParams []infrav1.NetworkParam) ([]inf
422
424
}
423
425
424
426
func (s * Service ) getOrCreatePort (eventObject runtime.Object , clusterName string , portName string , net infrav1.Network , instanceSecurityGroups * []string ) (* ports.Port , error ) {
427
+ mc := metrics .NewMetricPrometheusContext ("port" , "list" )
425
428
allPages , err := ports .List (s .networkClient , ports.ListOpts {
426
429
Name : portName ,
427
430
NetworkID : net .ID ,
428
431
}).AllPages ()
429
- if err != nil {
432
+ if mc . ObserveRequest ( err ) != nil {
430
433
return nil , fmt .Errorf ("searching for existing port for server: %v" , err )
431
434
}
432
435
existingPorts , err := ports .ExtractPorts (allPages )
@@ -491,8 +494,8 @@ func (s *Service) getOrCreatePort(eventObject runtime.Object, clusterName string
491
494
if len (fixedIPs ) > 0 {
492
495
createOpts .FixedIPs = fixedIPs
493
496
}
494
- mc := metrics .NewMetricPrometheusContext ("port" , "create" )
495
497
498
+ mc = metrics .NewMetricPrometheusContext ("port" , "create" )
496
499
port , err := ports .Create (s .networkClient , portsbinding.CreateOptsExt {
497
500
CreateOptsBuilder : createOpts ,
498
501
HostID : portOpts .HostID ,
@@ -509,11 +512,12 @@ func (s *Service) getOrCreatePort(eventObject runtime.Object, clusterName string
509
512
}
510
513
511
514
func (s * Service ) getOrCreateTrunk (eventObject runtime.Object , clusterName , trunkName , portID string ) (* trunks.Trunk , error ) {
515
+ mc := metrics .NewMetricPrometheusContext ("trunk" , "list" )
512
516
allPages , err := trunks .List (s .networkClient , trunks.ListOpts {
513
517
Name : trunkName ,
514
518
PortID : portID ,
515
519
}).AllPages ()
516
- if err != nil {
520
+ if mc . ObserveRequest ( err ) != nil {
517
521
return nil , fmt .Errorf ("searching for existing trunk for server: %v" , err )
518
522
}
519
523
trunkList , err := trunks .ExtractTrunks (allPages )
@@ -530,8 +534,8 @@ func (s *Service) getOrCreateTrunk(eventObject runtime.Object, clusterName, trun
530
534
PortID : portID ,
531
535
Description : names .GetDescription (clusterName ),
532
536
}
533
- mc := metrics .NewMetricPrometheusContext ("trunk" , "create" )
534
537
538
+ mc = metrics .NewMetricPrometheusContext ("trunk" , "create" )
535
539
trunk , err := trunks .Create (s .networkClient , trunkCreateOpts ).Extract ()
536
540
if mc .ObserveRequest (err ) != nil {
537
541
record .Warnf (eventObject , "FailedCreateTrunk" , "Failed to create trunk %s: %v" , trunkName , err )
@@ -566,8 +570,9 @@ func (s *Service) getImageID(imageName string) (string, error) {
566
570
Name : imageName ,
567
571
}
568
572
573
+ mc := metrics .NewMetricPrometheusContext ("image" , "list" )
569
574
pages , err := images .List (s .imagesClient , opts ).AllPages ()
570
- if err != nil {
575
+ if mc . ObserveRequest ( err ) != nil {
571
576
return "" , err
572
577
}
573
578
@@ -608,8 +613,9 @@ func (s *Service) DeleteInstance(eventObject runtime.Object, instanceName string
608
613
return nil
609
614
}
610
615
616
+ mc := metrics .NewMetricPrometheusContext ("server_os_interface" , "list" )
611
617
allInterfaces , err := attachinterfaces .List (s .computeClient , instance .ID ).AllPages ()
612
- if err != nil {
618
+ if mc . ObserveRequest ( err ) != nil {
613
619
return err
614
620
}
615
621
instanceInterfaces , err := attachinterfaces .ExtractInterfaces (allInterfaces )
@@ -699,9 +705,9 @@ func (s *Service) deleteAttachInterface(eventObject runtime.Object, instanceID,
699
705
return nil
700
706
}
701
707
702
- mc := metrics .NewMetricPrometheusContext ("router_interface " , "delete" )
708
+ mc := metrics .NewMetricPrometheusContext ("server_os_interface " , "delete" )
703
709
err = attachinterfaces .Delete (s .computeClient , instanceID , portID ).ExtractErr ()
704
- if mc .ObserveRequest (err ) != nil {
710
+ if mc .ObserveRequestIgnoreNotFound (err ) != nil {
705
711
if capoerrors .IsNotFound (err ) {
706
712
return nil
707
713
}
@@ -725,8 +731,9 @@ func (s *Service) deleteTrunk(eventObject runtime.Object, portID string) error {
725
731
listOpts := trunks.ListOpts {
726
732
PortID : port .ID ,
727
733
}
734
+ mc := metrics .NewMetricPrometheusContext ("trunk" , "list" )
728
735
trunkList , err := trunks .List (s .networkClient , listOpts ).AllPages ()
729
- if err != nil {
736
+ if mc . ObserveRequest ( err ) != nil {
730
737
return err
731
738
}
732
739
trunkInfo , err := trunks .ExtractTrunks (trunkList )
@@ -738,7 +745,8 @@ func (s *Service) deleteTrunk(eventObject runtime.Object, portID string) error {
738
745
}
739
746
740
747
err = util .PollImmediate (retryIntervalTrunkDelete , timeoutTrunkDelete , func () (bool , error ) {
741
- if err := trunks .Delete (s .networkClient , trunkInfo [0 ].ID ).ExtractErr (); err != nil {
748
+ mc := metrics .NewMetricPrometheusContext ("trunk" , "delete" )
749
+ if err := trunks .Delete (s .networkClient , trunkInfo [0 ].ID ).ExtractErr (); mc .ObserveRequest (err ) != nil {
742
750
if capoerrors .IsRetryable (err ) {
743
751
return false , nil
744
752
}
@@ -759,8 +767,9 @@ func (s *Service) getPort(portID string) (port *ports.Port, err error) {
759
767
if portID == "" {
760
768
return nil , fmt .Errorf ("portID should be specified to get detail" )
761
769
}
770
+ mc := metrics .NewMetricPrometheusContext ("port" , "get" )
762
771
port , err = ports .Get (s .networkClient , portID ).Extract ()
763
- if err != nil {
772
+ if mc . ObserveRequestIgnoreNotFound ( err ) != nil {
764
773
if capoerrors .IsNotFound (err ) {
765
774
return nil , nil
766
775
}
@@ -808,8 +817,9 @@ func (s *Service) GetInstance(resourceID string) (instance *infrav1.Instance, er
808
817
if resourceID == "" {
809
818
return nil , fmt .Errorf ("resourceId should be specified to get detail" )
810
819
}
820
+ mc := metrics .NewMetricPrometheusContext ("server" , "get" )
811
821
server , err := servers .Get (s .computeClient , resourceID ).Extract ()
812
- if err != nil {
822
+ if mc . ObserveRequestIgnoreNotFound ( err ) != nil {
813
823
if capoerrors .IsNotFound (err ) {
814
824
return nil , nil
815
825
}
@@ -835,8 +845,9 @@ func (s *Service) InstanceExists(name string) (instance *infrav1.Instance, err e
835
845
listOpts = servers.ListOpts {}
836
846
}
837
847
848
+ mc := metrics .NewMetricPrometheusContext ("server" , "list" )
838
849
allPages , err := servers .List (s .computeClient , listOpts ).AllPages ()
839
- if err != nil {
850
+ if mc . ObserveRequest ( err ) != nil {
840
851
return nil , fmt .Errorf ("get server list: %v" , err )
841
852
}
842
853
serverList , err := servers .ExtractServers (allPages )
0 commit comments