mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-03 09:22:44 +00:00
Merge pull request #120340 from pohly/dra-helper-logging-improvements
DRA: helper logging improvements
This commit is contained in:
commit
e00af59d0f
@ -263,28 +263,34 @@ const (
|
|||||||
schedulingCtxKeyPrefix = "schedulingCtx:"
|
schedulingCtxKeyPrefix = "schedulingCtx:"
|
||||||
)
|
)
|
||||||
|
|
||||||
func (ctrl *controller) add(logger *klog.Logger, obj interface{}) {
|
func (ctrl *controller) add(loggerV6 *klog.Logger, obj interface{}) {
|
||||||
if logger != nil {
|
var logger klog.Logger
|
||||||
logger.Info("new object", "content", prettyPrint(obj))
|
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{}) {
|
func (ctrl *controller) update(loggerV6 *klog.Logger, oldObj, newObj interface{}) {
|
||||||
if logger != nil {
|
var logger klog.Logger
|
||||||
|
if loggerV6 != nil {
|
||||||
diff := cmp.Diff(oldObj, newObj)
|
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)
|
objKey, err := getKey(obj)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
ctrl.logger.Error(err, "Failed to get key", "obj", obj)
|
loggerV.Error(err, "Failed to get key", "obj", obj)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
ctrl.logger.V(5).Info(msg, "key", objKey)
|
loggerV.Info(msg, "key", objKey)
|
||||||
ctrl.queue.Add(objKey)
|
ctrl.queue.Add(objKey)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -774,16 +780,20 @@ func (ctrl *controller) syncPodSchedulingContexts(ctx context.Context, schedulin
|
|||||||
|
|
||||||
ctrl.allocateClaims(ctx, claims, selectedNode, selectedUser)
|
ctrl.allocateClaims(ctx, claims, selectedNode, selectedUser)
|
||||||
|
|
||||||
allErrorsStr := "allocation of one or more pod claims failed."
|
var allErrors []error
|
||||||
allocationFailed := false
|
|
||||||
for _, delayed := range claims {
|
for _, delayed := range claims {
|
||||||
if delayed.Error != nil {
|
if delayed.Error != nil {
|
||||||
allErrorsStr = fmt.Sprintf("%s Claim %s: %s.", allErrorsStr, delayed.Claim.Name, delayed.Error)
|
if strings.Contains(delayed.Error.Error(), delayed.Claim.Name) {
|
||||||
allocationFailed = true
|
// Avoid adding redundant information.
|
||||||
|
allErrors = append(allErrors, delayed.Error)
|
||||||
|
} else {
|
||||||
|
// Include claim name, it's not in the underlying error.
|
||||||
|
allErrors = append(allErrors, fmt.Errorf("claim %s: %v", delayed.Claim.Name, delayed.Error))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if allocationFailed {
|
if len(allErrors) > 0 {
|
||||||
return fmt.Errorf(allErrorsStr)
|
return errors.Join(allErrors...)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user