Skip to content

Commit b03327c

Browse files
committed
Slog changes to addon and all controllers
This commit adds slog changes to all the addon and its controller. Signed-off-by: vbadrina <vbadrina@redhat.com>
1 parent 33c042b commit b03327c

19 files changed

+362
-234
lines changed

.golangci.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,11 @@ run:
55
timeout: 5m
66
modules-download-mode: readonly
77

8+
9+
linters:
10+
enable:
11+
- sloglint
12+
813
linters-settings:
914
errcheck:
1015
# report about not checking of errors in type assertions: `a := b.(MyStruct)`;

addons/agent_mirrorpeer_controller.go

Lines changed: 142 additions & 81 deletions
Large diffs are not rendered by default.

addons/agent_mirrorpeer_controller_test.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@ package addons
33
import (
44
"context"
55
"fmt"
6+
"log/slog"
7+
"os"
68
"testing"
79

810
"github.com/kube-object-storage/lib-bucket-provisioner/pkg/apis/objectbucket.io/v1alpha1"
@@ -148,6 +150,7 @@ func TestMirrorPeerReconcile(t *testing.T) {
148150
SpokeClient: fakeSpokeClient,
149151
Scheme: scheme,
150152
SpokeClusterName: pr.ClusterName,
153+
Logger: slog.New(slog.NewTextHandler(os.Stdout, nil)),
151154
}
152155

153156
req := ctrl.Request{
@@ -209,6 +212,7 @@ func TestDisableMirroring(t *testing.T) {
209212
SpokeClient: fakeSpokeClient,
210213
Scheme: scheme,
211214
SpokeClusterName: pr.ClusterName,
215+
Logger: slog.New(slog.NewTextHandler(os.Stdout, nil)),
212216
}
213217
if err := r.disableMirroring(ctx, pr.StorageClusterRef.Name, pr.StorageClusterRef.Namespace, &mirrorpeer1); err != nil {
214218
t.Error("failed to disable mirroring", err)
@@ -258,6 +262,7 @@ func TestDeleteGreenSecret(t *testing.T) {
258262
SpokeClient: fakeSpokeClient,
259263
Scheme: scheme,
260264
SpokeClusterName: pr.ClusterName,
265+
Logger: slog.New(slog.NewTextHandler(os.Stdout, nil)),
261266
}
262267

263268
if err := r.deleteGreenSecret(ctx, pr.ClusterName, pr.StorageClusterRef.Namespace, &mirrorpeer1); err != nil {
@@ -297,6 +302,7 @@ func TestDeleteS3(t *testing.T) {
297302
SpokeClient: fakeSpokeClient,
298303
Scheme: scheme,
299304
SpokeClusterName: pr.ClusterName,
305+
Logger: slog.New(slog.NewTextHandler(os.Stdout, nil)),
300306
}
301307
if err := r.deleteS3(ctx, mirrorpeer1, pr.StorageClusterRef.Namespace); err != nil {
302308
t.Errorf("failed to delete s3 bucket")

addons/blue_secret_controller.go

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package addons
22

33
import (
44
"context"
5+
"log/slog"
56

67
ctrl "sigs.k8s.io/controller-runtime"
78
"sigs.k8s.io/controller-runtime/pkg/builder"
@@ -13,7 +14,6 @@ import (
1314
corev1 "k8s.io/api/core/v1"
1415
"k8s.io/apimachinery/pkg/api/errors"
1516
"k8s.io/apimachinery/pkg/runtime"
16-
"k8s.io/klog/v2"
1717
)
1818

1919
// BlueSecretReconciler reconciles a MirrorPeer object
@@ -22,6 +22,7 @@ type BlueSecretReconciler struct {
2222
HubClient client.Client
2323
SpokeClient client.Client
2424
SpokeClusterName string
25+
Logger *slog.Logger
2526
}
2627

2728
// SetupWithManager sets up the controller with the Manager.
@@ -45,6 +46,8 @@ func (r *BlueSecretReconciler) SetupWithManager(mgr ctrl.Manager) error {
4546
},
4647
}
4748

49+
r.Logger.Info("Setting up controller with manager")
50+
4851
return ctrl.NewControllerManagedBy(mgr).
4952
Named("bluesecret_controller").
5053
Watches(&corev1.Secret{}, &handler.EnqueueRequestForObject{},
@@ -55,22 +58,26 @@ func (r *BlueSecretReconciler) SetupWithManager(mgr ctrl.Manager) error {
5558
func (r *BlueSecretReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error) {
5659
var err error
5760
var secret corev1.Secret
61+
logger := r.Logger.With("secret", req.NamespacedName.String())
5862

59-
klog.Info("Reconciling blue secret", "secret", req.NamespacedName.String())
63+
logger.Info("Starting reconciliation for BlueSecret")
6064
err = r.SpokeClient.Get(ctx, req.NamespacedName, &secret)
6165
if err != nil {
6266
if errors.IsNotFound(err) {
63-
klog.Infof("Could not find secret. Ignoring since it must have been deleted")
67+
logger.Info("BlueSecret not found, possibly deleted")
6468
return ctrl.Result{}, nil
6569
}
66-
klog.Error("Failed to get secret.", err)
70+
logger.Error("Failed to retrieve BlueSecret from Kubernetes", "error", err)
6771
return ctrl.Result{}, err
6872
}
6973

74+
logger.Info("Successfully retrieved BlueSecret")
7075
err = r.syncBlueSecretForRook(ctx, secret)
7176
if err != nil {
77+
logger.Error("Failed to synchronize BlueSecret", "error", err)
7278
return ctrl.Result{}, err
7379
}
7480

81+
logger.Info("Reconciliation complete for BlueSecret")
7582
return ctrl.Result{}, nil
7683
}

addons/blue_secret_controller_test.go

Lines changed: 0 additions & 1 deletion
This file was deleted.

addons/green_secret_controller.go

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,13 @@ package addons
33
import (
44
"context"
55
"fmt"
6+
"log/slog"
67

78
"github.com/red-hat-storage/odf-multicluster-orchestrator/controllers/utils"
89
corev1 "k8s.io/api/core/v1"
910
"k8s.io/apimachinery/pkg/api/errors"
1011
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
1112
"k8s.io/apimachinery/pkg/runtime"
12-
"k8s.io/klog/v2"
1313
ctrl "sigs.k8s.io/controller-runtime"
1414
"sigs.k8s.io/controller-runtime/pkg/builder"
1515
"sigs.k8s.io/controller-runtime/pkg/client"
@@ -24,6 +24,7 @@ type GreenSecretReconciler struct {
2424
HubClient client.Client
2525
SpokeClient client.Client
2626
SpokeClusterName string
27+
Logger *slog.Logger
2728
}
2829

2930
// SetupWithManager sets up the controller with the Manager.
@@ -51,6 +52,8 @@ func (r *GreenSecretReconciler) SetupWithManager(mgr ctrl.Manager) error {
5152
},
5253
}
5354

55+
r.Logger.Info("Setting up controller with manager", "controller", "greensecret_controller")
56+
5457
return ctrl.NewControllerManagedBy(mgr).
5558
Named("greensecret_controller").
5659
Watches(&corev1.Secret{}, &handler.EnqueueRequestForObject{},
@@ -62,25 +65,28 @@ func (r *GreenSecretReconciler) Reconcile(ctx context.Context, req ctrl.Request)
6265
var err error
6366
var greenSecret corev1.Secret
6467

65-
klog.Info("Reconciling green secret", "secret", req.NamespacedName.String())
68+
r.Logger.Info("Reconciling green secret", "secret", req.NamespacedName.String())
6669
err = r.HubClient.Get(ctx, req.NamespacedName, &greenSecret)
6770
if err != nil {
6871
if errors.IsNotFound(err) {
69-
klog.Infof("Could not find secret. Ignoring since it must have been deleted")
72+
r.Logger.Info("Green secret not found, likely deleted", "secret", req.NamespacedName.String())
7073
return ctrl.Result{}, nil
7174
}
72-
klog.Error("Failed to get secret.", err)
75+
r.Logger.Error("Failed to retrieve green secret", "secret", req.NamespacedName.String(), "error", err)
7376
return ctrl.Result{}, err
7477
}
7578

7679
if err = validateGreenSecret(greenSecret); err != nil {
77-
return ctrl.Result{}, fmt.Errorf("failed to validate secret %q", greenSecret.Name)
80+
r.Logger.Error("Validation failed for green secret", "secret", greenSecret.Name, "error", err)
81+
return ctrl.Result{}, fmt.Errorf("failed to validate green secret %q: %v", greenSecret.Name, err)
7882
}
7983

8084
err = r.syncGreenSecretForRook(ctx, greenSecret)
8185
if err != nil {
86+
r.Logger.Error("Failed to sync green secret for Rook", "secret", greenSecret.Name, "error", err)
8287
return ctrl.Result{}, err
8388
}
8489

90+
r.Logger.Info("Successfully reconciled and synced green secret", "secret", greenSecret.Name)
8591
return ctrl.Result{}, nil
8692
}

addons/green_secret_controller_test.go

Lines changed: 0 additions & 1 deletion
This file was deleted.

0 commit comments

Comments
 (0)