dra controller helper: merge log entries for informer events

Instead of emitting two log entries for new or updated ResourceClaim and
PodSchedulingContext, add the additional information for V(6) to the logger via
WithValues and emit one log entry. This makes the log shorter and easier to
read because related information is on one line.
This commit is contained in:
Patrick Ohly 2023-08-30 15:16:20 +02:00
parent 6eca142082
commit f96e23e477

View File

@ -263,28 +263,34 @@ const (
schedulingCtxKeyPrefix = "schedulingCtx:"
)
func (ctrl *controller) add(logger *klog.Logger, obj interface{}) {
if logger != nil {
logger.Info("new object", "content", prettyPrint(obj))
func (ctrl *controller) add(loggerV6 *klog.Logger, obj interface{}) {
var logger klog.Logger
if loggerV6 != nil {
logger = loggerV6.WithValues("object", prettyPrint(obj))
} else {
logger = ctrl.logger.V(5)
}
ctrl.addNewOrUpdated("Adding new work item", obj)
ctrl.addNewOrUpdated(logger, "Adding new work item", obj)
}
func (ctrl *controller) update(logger *klog.Logger, oldObj, newObj interface{}) {
if logger != nil {
func (ctrl *controller) update(loggerV6 *klog.Logger, oldObj, newObj interface{}) {
var logger klog.Logger
if loggerV6 != nil {
diff := cmp.Diff(oldObj, newObj)
logger.Info("updated object", "content", prettyPrint(newObj), "diff", diff)
logger = loggerV6.WithValues("object", prettyPrint(newObj), "diff", diff)
} else {
logger = ctrl.logger.V(5)
}
ctrl.addNewOrUpdated("Adding updated work item", newObj)
ctrl.addNewOrUpdated(logger, "Adding updated work item", newObj)
}
func (ctrl *controller) addNewOrUpdated(msg string, obj interface{}) {
func (ctrl *controller) addNewOrUpdated(loggerV klog.Logger, msg string, obj interface{}) {
objKey, err := getKey(obj)
if err != nil {
ctrl.logger.Error(err, "Failed to get key", "obj", obj)
loggerV.Error(err, "Failed to get key", "obj", obj)
return
}
ctrl.logger.V(5).Info(msg, "key", objKey)
loggerV.Info(msg, "key", objKey)
ctrl.queue.Add(objKey)
}