diff --git a/controllers/hetznerbaremetalhost_controller.go b/controllers/hetznerbaremetalhost_controller.go index 13ccfd8f4..a3348522f 100644 --- a/controllers/hetznerbaremetalhost_controller.go +++ b/controllers/hetznerbaremetalhost_controller.go @@ -69,13 +69,6 @@ func (r *HetznerBareMetalHostReconciler) Reconcile(ctx context.Context, req ctrl log := ctrl.LoggerFrom(ctx) start := time.Now() - defer func() { - // check duration of reconcile. Warn if it took too long. - duration := time.Since(start) - if duration > 15*time.Second { - log.Info("Reconcile took too long", "duration", duration, "res", res, "reterr", reterr) - } - }() // Fetch the Hetzner bare metal host instance. bmHost := &infrav1.HetznerBareMetalHost{} @@ -87,10 +80,18 @@ func (r *HetznerBareMetalHostReconciler) Reconcile(ctx context.Context, req ctrl return reconcile.Result{}, err } + log = log.WithValues("state", bmHost.Spec.Status.ProvisioningState) + ctx = ctrl.LoggerInto(ctx, log) + initialProvisioningState := bmHost.Spec.Status.ProvisioningState defer func() { + // check duration of reconcile. Warn if it took too long. + duration := time.Since(start) + if duration > 10*time.Second { + log.Info("Reconcile took too long", "duration", duration, "res", res, "reterr", reterr) + } if initialProvisioningState != bmHost.Spec.Status.ProvisioningState { - log.Info("Provisioning state changed", "from", initialProvisioningState, "to", bmHost.Spec.Status.ProvisioningState) + log.Info("Provisioning state changed", "newState", bmHost.Spec.Status.ProvisioningState, "duration", duration) } }() @@ -140,6 +141,7 @@ func (r *HetznerBareMetalHostReconciler) Reconcile(ctx context.Context, req ctrl } if err := r.Client.Get(ctx, hetznerClusterName, hetznerCluster); err != nil { if apierrors.IsNotFound(err) { + log.Info("HetznerCluster not found. Requeueing") return reconcile.Result{RequeueAfter: 10 * time.Second}, nil } return reconcile.Result{}, fmt.Errorf("failed to get HetznerCluster: %w", err) @@ -153,8 +155,6 @@ func (r *HetznerBareMetalHostReconciler) Reconcile(ctx context.Context, req ctrl return reconcile.Result{}, fmt.Errorf("failed to get Cluster: %w", err) } - log = log.WithValues("Cluster", klog.KObj(cluster)) - hetznerBareMetalMachine := &infrav1.HetznerBareMetalMachine{} if bmHost.Spec.ConsumerRef != nil { @@ -170,8 +170,6 @@ func (r *HetznerBareMetalHostReconciler) Reconcile(ctx context.Context, req ctrl log = log.WithValues("HetznerBareMetalMachine", klog.KObj(hetznerBareMetalMachine)) - ctx = ctrl.LoggerInto(ctx, log) - // Get Hetzner robot api credentials secretManager := secretutil.NewSecretManager(log, r.Client, r.APIReader) robotCreds, err := getAndValidateRobotCredentials(ctx, req.Namespace, hetznerCluster, secretManager)