mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-14 14:23:37 +00:00
Migrated pkg/controller/garbagecollector to contextual logging
Signed-off-by: xin.li <xin.li@daocloud.io>
This commit is contained in:
parent
916c3466b9
commit
3cf2822bc5
@ -187,7 +187,7 @@ func (gc *GarbageCollector) Sync(ctx context.Context, discoveryClient discovery.
|
|||||||
logger := klog.FromContext(ctx)
|
logger := klog.FromContext(ctx)
|
||||||
|
|
||||||
// Get the current resource list from discovery.
|
// 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.
|
// This can occur if there is an internal error in GetDeletableResources.
|
||||||
if len(newResources) == 0 {
|
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
|
// On a reattempt, check if available resources have changed
|
||||||
if attempt > 1 {
|
if attempt > 1 {
|
||||||
newResources = GetDeletableResources(discoveryClient)
|
newResources = GetDeletableResources(ctx, discoveryClient)
|
||||||
if len(newResources) == 0 {
|
if len(newResources) == 0 {
|
||||||
logger.V(2).Info("no resources reported by discovery", "attempt", attempt)
|
logger.V(2).Info("no resources reported by discovery", "attempt", attempt)
|
||||||
metrics.GarbageCollectorResourcesSyncError.Inc()
|
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,
|
// All discovery errors are considered temporary. Upon encountering any error,
|
||||||
// GetDeletableResources will log and return any discovered resources it was
|
// GetDeletableResources will log and return any discovered resources it was
|
||||||
// able to process (which may be none).
|
// 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()
|
preferredResources, err := discoveryClient.ServerPreferredResources()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
if discovery.IsGroupDiscoveryFailedError(err) {
|
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 {
|
} else {
|
||||||
klog.Warningf("failed to discover preferred resources: %v", err)
|
logger.Info("failed to discover preferred resources", "error", err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if preferredResources == nil {
|
if preferredResources == nil {
|
||||||
@ -829,7 +830,7 @@ func GetDeletableResources(discoveryClient discovery.ServerResourcesInterface) m
|
|||||||
for _, rl := range deletableResources {
|
for _, rl := range deletableResources {
|
||||||
gv, err := schema.ParseGroupVersion(rl.GroupVersion)
|
gv, err := schema.ParseGroupVersion(rl.GroupVersion)
|
||||||
if err != nil {
|
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
|
continue
|
||||||
}
|
}
|
||||||
for i := range rl.APIResources {
|
for i := range rl.APIResources {
|
||||||
|
@ -798,13 +798,14 @@ func TestGetDeletableResources(t *testing.T) {
|
|||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_, ctx := ktesting.NewTestContext(t)
|
||||||
for name, test := range tests {
|
for name, test := range tests {
|
||||||
t.Logf("testing %q", name)
|
t.Logf("testing %q", name)
|
||||||
client := &fakeServerResources{
|
client := &fakeServerResources{
|
||||||
PreferredResources: test.serverResources,
|
PreferredResources: test.serverResources,
|
||||||
Error: test.err,
|
Error: test.err,
|
||||||
}
|
}
|
||||||
actual := GetDeletableResources(client)
|
actual := GetDeletableResources(ctx, client)
|
||||||
if !reflect.DeepEqual(test.deletableResources, actual) {
|
if !reflect.DeepEqual(test.deletableResources, actual) {
|
||||||
t.Errorf("expected resources:\n%v\ngot:\n%v", test.deletableResources, actual)
|
t.Errorf("expected resources:\n%v\ngot:\n%v", test.deletableResources, actual)
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user