From 3cf2822bc587f3f63e87e9b38098970d8f2b7ca5 Mon Sep 17 00:00:00 2001 From: "xin.li" Date: Mon, 20 Mar 2023 21:49:41 +0800 Subject: [PATCH] Migrated pkg/controller/garbagecollector to contextual logging Signed-off-by: xin.li --- pkg/controller/garbagecollector/garbagecollector.go | 13 +++++++------ .../garbagecollector/garbagecollector_test.go | 3 ++- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/pkg/controller/garbagecollector/garbagecollector.go b/pkg/controller/garbagecollector/garbagecollector.go index 1cd2355a7c0..a5163cfcdf7 100644 --- a/pkg/controller/garbagecollector/garbagecollector.go +++ b/pkg/controller/garbagecollector/garbagecollector.go @@ -187,7 +187,7 @@ func (gc *GarbageCollector) Sync(ctx context.Context, discoveryClient discovery. logger := klog.FromContext(ctx) // Get the current resource list from discovery. - newResources := GetDeletableResources(discoveryClient) + newResources := GetDeletableResources(ctx, discoveryClient) // This can occur if there is an internal error in GetDeletableResources. if len(newResources) == 0 { @@ -214,7 +214,7 @@ func (gc *GarbageCollector) Sync(ctx context.Context, discoveryClient discovery. // On a reattempt, check if available resources have changed if attempt > 1 { - newResources = GetDeletableResources(discoveryClient) + newResources = GetDeletableResources(ctx, discoveryClient) if len(newResources) == 0 { logger.V(2).Info("no resources reported by discovery", "attempt", attempt) metrics.GarbageCollectorResourcesSyncError.Inc() @@ -809,13 +809,14 @@ func (gc *GarbageCollector) GraphHasUID(u types.UID) bool { // All discovery errors are considered temporary. Upon encountering any error, // GetDeletableResources will log and return any discovered resources it was // able to process (which may be none). -func GetDeletableResources(discoveryClient discovery.ServerResourcesInterface) map[schema.GroupVersionResource]struct{} { +func GetDeletableResources(ctx context.Context, discoveryClient discovery.ServerResourcesInterface) map[schema.GroupVersionResource]struct{} { + logger := klog.FromContext(ctx) preferredResources, err := discoveryClient.ServerPreferredResources() if err != nil { if discovery.IsGroupDiscoveryFailedError(err) { - klog.Warningf("failed to discover some groups: %v", err.(*discovery.ErrGroupDiscoveryFailed).Groups) + logger.Info("failed to discover some groups", "groups", err.(*discovery.ErrGroupDiscoveryFailed).Groups) } else { - klog.Warningf("failed to discover preferred resources: %v", err) + logger.Info("failed to discover preferred resources", "error", err) } } if preferredResources == nil { @@ -829,7 +830,7 @@ func GetDeletableResources(discoveryClient discovery.ServerResourcesInterface) m for _, rl := range deletableResources { gv, err := schema.ParseGroupVersion(rl.GroupVersion) if err != nil { - klog.Warningf("ignoring invalid discovered resource %q: %v", rl.GroupVersion, err) + logger.Info("ignoring invalid discovered resource", "groupversion", rl.GroupVersion, "error", err) continue } for i := range rl.APIResources { diff --git a/pkg/controller/garbagecollector/garbagecollector_test.go b/pkg/controller/garbagecollector/garbagecollector_test.go index 56b1215884c..f88cb61c434 100644 --- a/pkg/controller/garbagecollector/garbagecollector_test.go +++ b/pkg/controller/garbagecollector/garbagecollector_test.go @@ -798,13 +798,14 @@ func TestGetDeletableResources(t *testing.T) { }, } + _, ctx := ktesting.NewTestContext(t) for name, test := range tests { t.Logf("testing %q", name) client := &fakeServerResources{ PreferredResources: test.serverResources, Error: test.err, } - actual := GetDeletableResources(client) + actual := GetDeletableResources(ctx, client) if !reflect.DeepEqual(test.deletableResources, actual) { t.Errorf("expected resources:\n%v\ngot:\n%v", test.deletableResources, actual) }