Skip to content

Commit dbf66f7

Browse files
meobilivangrichardcase
authored andcommitted
instrument cloud/services/container
1 parent 5172186 commit dbf66f7

File tree

3 files changed

+103
-0
lines changed

3 files changed

+103
-0
lines changed

cloud/services/container/clusters/kubeconfig.go

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ import (
3232
"k8s.io/client-go/tools/clientcmd"
3333
"k8s.io/client-go/tools/clientcmd/api"
3434
infrav1exp "sigs.k8s.io/cluster-api-provider-gcp/exp/api/v1beta1"
35+
"sigs.k8s.io/cluster-api-provider-gcp/util/telemetry"
3536
"sigs.k8s.io/cluster-api/util/kubeconfig"
3637
"sigs.k8s.io/cluster-api/util/secret"
3738
)
@@ -42,6 +43,11 @@ const (
4243
)
4344

4445
func (s *Service) reconcileKubeconfig(ctx context.Context, cluster *containerpb.Cluster, log *logr.Logger) error {
46+
ctx, span := telemetry.Tracer().Start(
47+
ctx, "clusters.Services.reconcileKubeconfig",
48+
)
49+
defer span.End()
50+
4551
log.Info("Reconciling kubeconfig")
4652
clusterRef := types.NamespacedName{
4753
Name: s.scope.Cluster.Name,
@@ -72,6 +78,11 @@ func (s *Service) reconcileKubeconfig(ctx context.Context, cluster *containerpb.
7278
}
7379

7480
func (s *Service) reconcileAdditionalKubeconfigs(ctx context.Context, cluster *containerpb.Cluster, log *logr.Logger) error {
81+
ctx, span := telemetry.Tracer().Start(
82+
ctx, "clusters.Services.reconcileAdditionalKubeconfigs",
83+
)
84+
defer span.End()
85+
7586
log.Info("Reconciling additional kubeconfig")
7687
clusterRef := types.NamespacedName{
7788
Name: s.scope.Cluster.Name + "-user",
@@ -99,6 +110,11 @@ func (s *Service) reconcileAdditionalKubeconfigs(ctx context.Context, cluster *c
99110
}
100111

101112
func (s *Service) createUserKubeconfigSecret(ctx context.Context, cluster *containerpb.Cluster, clusterRef *types.NamespacedName) error {
113+
ctx, span := telemetry.Tracer().Start(
114+
ctx, "clusters.Services.createUserKubeconfigSecret",
115+
)
116+
defer span.End()
117+
102118
controllerOwnerRef := *metav1.NewControllerRef(s.scope.GCPManagedControlPlane, infrav1exp.GroupVersion.WithKind("GCPManagedControlPlane"))
103119

104120
contextName := s.getKubeConfigContextName(false)
@@ -134,6 +150,11 @@ func (s *Service) createUserKubeconfigSecret(ctx context.Context, cluster *conta
134150
}
135151

136152
func (s *Service) createCAPIKubeconfigSecret(ctx context.Context, cluster *containerpb.Cluster, clusterRef *types.NamespacedName, log *logr.Logger) error {
153+
ctx, span := telemetry.Tracer().Start(
154+
ctx, "clusters.Services.createCAPIKubeconfigSecret",
155+
)
156+
defer span.End()
157+
137158
controllerOwnerRef := *metav1.NewControllerRef(s.scope.GCPManagedControlPlane, infrav1exp.GroupVersion.WithKind("GCPManagedControlPlane"))
138159

139160
contextName := s.getKubeConfigContextName(false)
@@ -171,6 +192,11 @@ func (s *Service) createCAPIKubeconfigSecret(ctx context.Context, cluster *conta
171192
}
172193

173194
func (s *Service) updateCAPIKubeconfigSecret(ctx context.Context, configSecret *corev1.Secret) error {
195+
ctx, span := telemetry.Tracer().Start(
196+
ctx, "clusters.Services.updateCAPIKubeconfigSecret",
197+
)
198+
defer span.End()
199+
174200
data, ok := configSecret.Data[secret.KubeconfigDataName]
175201
if !ok {
176202
return errors.Errorf("missing key %q in secret data", secret.KubeconfigDataName)
@@ -238,6 +264,11 @@ func (s *Service) createBaseKubeConfig(contextName string, cluster *containerpb.
238264
}
239265

240266
func (s *Service) generateToken(ctx context.Context) (string, error) {
267+
ctx, span := telemetry.Tracer().Start(
268+
ctx, "clusters.Services.generateToken",
269+
)
270+
defer span.End()
271+
241272
req := &credentialspb.GenerateAccessTokenRequest{
242273
Name: "projects/-/serviceAccounts/" + s.scope.GetCredential().ClientEmail,
243274
Scope: []string{

cloud/services/container/clusters/reconcile.go

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ import (
3333
"google.golang.org/grpc/codes"
3434
infrav1exp "sigs.k8s.io/cluster-api-provider-gcp/exp/api/v1beta1"
3535
"sigs.k8s.io/cluster-api-provider-gcp/util/reconciler"
36+
"sigs.k8s.io/cluster-api-provider-gcp/util/telemetry"
3637
clusterv1 "sigs.k8s.io/cluster-api/api/v1beta1"
3738
"sigs.k8s.io/cluster-api/util/conditions"
3839
ctrl "sigs.k8s.io/controller-runtime"
@@ -41,6 +42,11 @@ import (
4142

4243
// Reconcile reconcile GKE cluster.
4344
func (s *Service) Reconcile(ctx context.Context) (ctrl.Result, error) {
45+
ctx, span := telemetry.Tracer().Start(
46+
ctx, "clusters.Services.Reconcile",
47+
)
48+
defer span.End()
49+
4450
log := log.FromContext(ctx).WithValues("service", "container.clusters")
4551
log.Info("Reconciling cluster resources")
4652

@@ -182,6 +188,11 @@ func (s *Service) Reconcile(ctx context.Context) (ctrl.Result, error) {
182188

183189
// Delete delete GKE cluster.
184190
func (s *Service) Delete(ctx context.Context) (ctrl.Result, error) {
191+
ctx, span := telemetry.Tracer().Start(
192+
ctx, "clusters.Services.Delete",
193+
)
194+
defer span.End()
195+
185196
log := log.FromContext(ctx).WithValues("service", "container.clusters")
186197
log.Info("Deleting cluster resources")
187198

@@ -226,6 +237,11 @@ func (s *Service) Delete(ctx context.Context) (ctrl.Result, error) {
226237
}
227238

228239
func (s *Service) describeCluster(ctx context.Context, log *logr.Logger) (*containerpb.Cluster, error) {
240+
ctx, span := telemetry.Tracer().Start(
241+
ctx, "clusters.Services.describeCluster",
242+
)
243+
defer span.End()
244+
229245
getClusterRequest := &containerpb.GetClusterRequest{
230246
Name: s.scope.ClusterFullName(),
231247
}
@@ -245,6 +261,11 @@ func (s *Service) describeCluster(ctx context.Context, log *logr.Logger) (*conta
245261
}
246262

247263
func (s *Service) createCluster(ctx context.Context, log *logr.Logger) error {
264+
ctx, span := telemetry.Tracer().Start(
265+
ctx, "clusters.Services.createCluster",
266+
)
267+
defer span.End()
268+
248269
nodePools, machinePools, _ := s.scope.GetAllNodePools(ctx)
249270

250271
log.V(2).Info("Running pre-flight checks on machine pools before cluster creation")
@@ -351,6 +372,11 @@ func (s *Service) getSubnetNameInClusterRegion() string {
351372
}
352373

353374
func (s *Service) updateCluster(ctx context.Context, updateClusterRequest *containerpb.UpdateClusterRequest, log *logr.Logger) error {
375+
ctx, span := telemetry.Tracer().Start(
376+
ctx, "clusters.Services.updateCluster",
377+
)
378+
defer span.End()
379+
354380
_, err := s.scope.ManagedControlPlaneClient().UpdateCluster(ctx, updateClusterRequest)
355381
if err != nil {
356382
log.Error(err, "Error updating GKE cluster", "name", s.scope.ClusterName())
@@ -361,6 +387,11 @@ func (s *Service) updateCluster(ctx context.Context, updateClusterRequest *conta
361387
}
362388

363389
func (s *Service) deleteCluster(ctx context.Context, log *logr.Logger) error {
390+
ctx, span := telemetry.Tracer().Start(
391+
ctx, "clusters.Services.deleteCluster",
392+
)
393+
defer span.End()
394+
364395
deleteClusterRequest := &containerpb.DeleteClusterRequest{
365396
Name: s.scope.ClusterFullName(),
366397
}

cloud/services/container/nodepools/reconcile.go

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ import (
2222
"strings"
2323

2424
"sigs.k8s.io/cluster-api-provider-gcp/util/resourceurl"
25+
"sigs.k8s.io/cluster-api-provider-gcp/util/telemetry"
2526

2627
"google.golang.org/api/iterator"
2728
"google.golang.org/grpc/codes"
@@ -57,6 +58,11 @@ func (s *Service) setReadyStatusFromConditions() {
5758

5859
// Reconcile reconcile GKE node pool.
5960
func (s *Service) Reconcile(ctx context.Context) (ctrl.Result, error) {
61+
ctx, span := telemetry.Tracer().Start(
62+
ctx, "nodepools.Services.Reconcile",
63+
)
64+
defer span.End()
65+
6066
log := log.FromContext(ctx)
6167
log.Info("Reconciling node pool resources")
6268

@@ -195,6 +201,11 @@ func (s *Service) Reconcile(ctx context.Context) (ctrl.Result, error) {
195201

196202
// Delete delete GKE node pool.
197203
func (s *Service) Delete(ctx context.Context) (ctrl.Result, error) {
204+
ctx, span := telemetry.Tracer().Start(
205+
ctx, "nodepools.Services.Delete",
206+
)
207+
defer span.End()
208+
198209
log := log.FromContext(ctx)
199210
log.Info("Deleting node pool resources")
200211

@@ -239,6 +250,11 @@ func (s *Service) Delete(ctx context.Context) (ctrl.Result, error) {
239250
}
240251

241252
func (s *Service) describeNodePool(ctx context.Context, log *logr.Logger) (*containerpb.NodePool, error) {
253+
ctx, span := telemetry.Tracer().Start(
254+
ctx, "nodepools.Services.describeNodePool",
255+
)
256+
defer span.End()
257+
242258
getNodePoolRequest := &containerpb.GetNodePoolRequest{
243259
Name: s.scope.NodePoolFullName(),
244260
}
@@ -258,6 +274,11 @@ func (s *Service) describeNodePool(ctx context.Context, log *logr.Logger) (*cont
258274
}
259275

260276
func (s *Service) getInstances(ctx context.Context, nodePool *containerpb.NodePool) ([]*computepb.ManagedInstance, error) {
277+
ctx, span := telemetry.Tracer().Start(
278+
ctx, "nodepools.Services.getInstances",
279+
)
280+
defer span.End()
281+
261282
instances := []*computepb.ManagedInstance{}
262283

263284
for _, url := range nodePool.GetInstanceGroupUrls() {
@@ -287,6 +308,11 @@ func (s *Service) getInstances(ctx context.Context, nodePool *containerpb.NodePo
287308
}
288309

289310
func (s *Service) createNodePool(ctx context.Context, log *logr.Logger) error {
311+
ctx, span := telemetry.Tracer().Start(
312+
ctx, "nodepools.Services.createNodePool",
313+
)
314+
defer span.End()
315+
290316
log.V(2).Info("Running pre-flight checks on machine pool before creation")
291317
if err := shared.ManagedMachinePoolPreflightCheck(s.scope.GCPManagedMachinePool, s.scope.MachinePool, s.scope.Region()); err != nil {
292318
return fmt.Errorf("preflight checks on machine pool before creating: %w", err)
@@ -307,6 +333,11 @@ func (s *Service) createNodePool(ctx context.Context, log *logr.Logger) error {
307333
}
308334

309335
func (s *Service) updateNodePoolConfig(ctx context.Context, updateNodePoolRequest *containerpb.UpdateNodePoolRequest) error {
336+
ctx, span := telemetry.Tracer().Start(
337+
ctx, "nodepools.Services.updateNodePoolConfig",
338+
)
339+
defer span.End()
340+
310341
_, err := s.scope.ManagedMachinePoolClient().UpdateNodePool(ctx, updateNodePoolRequest)
311342
if err != nil {
312343
return err
@@ -316,6 +347,11 @@ func (s *Service) updateNodePoolConfig(ctx context.Context, updateNodePoolReques
316347
}
317348

318349
func (s *Service) updateNodePoolAutoscaling(ctx context.Context, setNodePoolAutoscalingRequest *containerpb.SetNodePoolAutoscalingRequest) error {
350+
ctx, span := telemetry.Tracer().Start(
351+
ctx, "nodepools.Services.updateNodePoolAutoScaling",
352+
)
353+
defer span.End()
354+
319355
_, err := s.scope.ManagedMachinePoolClient().SetNodePoolAutoscaling(ctx, setNodePoolAutoscalingRequest)
320356
if err != nil {
321357
return err
@@ -325,6 +361,11 @@ func (s *Service) updateNodePoolAutoscaling(ctx context.Context, setNodePoolAuto
325361
}
326362

327363
func (s *Service) updateNodePoolSize(ctx context.Context, setNodePoolSizeRequest *containerpb.SetNodePoolSizeRequest) error {
364+
ctx, span := telemetry.Tracer().Start(
365+
ctx, "nodepools.Services.updateNodePoolSize",
366+
)
367+
defer span.End()
368+
328369
_, err := s.scope.ManagedMachinePoolClient().SetNodePoolSize(ctx, setNodePoolSizeRequest)
329370
if err != nil {
330371
return err

0 commit comments

Comments
 (0)