diff --git a/pkg/controllers/status/common.go b/pkg/controllers/status/common.go index 9a78a688f2d1..7297ed11ba11 100644 --- a/pkg/controllers/status/common.go +++ b/pkg/controllers/status/common.go @@ -144,8 +144,10 @@ func updateResourceStatus( newObj, err := interpreter.AggregateStatus(resource, bindingStatus.AggregatedStatus) if err != nil { klog.Errorf("Failed to aggregate status for resource template(%s/%s/%s), Error: %v", gvr, resource.GetNamespace(), resource.GetName(), err) + eventRecorder.Event(resource, corev1.EventTypeWarning, events.EventReasonAggregateStatusFailed, err.Error()) return err } + eventRecorder.Event(resource, corev1.EventTypeNormal, events.EventReasonAggregateStatusSucceed, "Aggregated status to object successfully.") oldStatus, _, _ := unstructured.NestedFieldNoCopy(resource.Object, "status") newStatus, _, _ := unstructured.NestedFieldNoCopy(newObj.Object, "status") @@ -159,14 +161,9 @@ func updateResourceStatus( return err } - eventRecorder.Event(resource, corev1.EventTypeNormal, events.EventReasonAggregateStatusSucceed, "Update Resource with AggregatedStatus successfully.") klog.V(3).Infof("Update resource(%s/%s/%s) status successfully.", gvr, resource.GetNamespace(), resource.GetName()) - return nil }); err != nil { - if resource != nil { - eventRecorder.Event(resource, corev1.EventTypeWarning, events.EventReasonAggregateStatusFailed, err.Error()) - } return err } diff --git a/pkg/detector/detector.go b/pkg/detector/detector.go index eaf682901bfa..07a339437d9c 100644 --- a/pkg/detector/detector.go +++ b/pkg/detector/detector.go @@ -784,8 +784,10 @@ func (d *ResourceDetector) BuildResourceBinding(object *unstructured.Unstructure replicas, replicaRequirements, err := d.ResourceInterpreter.GetReplicas(object) if err != nil { klog.Errorf("Failed to customize replicas for %s(%s), %v", object.GroupVersionKind(), object.GetName(), err) + d.EventRecorder.Event(object, corev1.EventTypeWarning, events.EventReasonGetReplicasFailed, err.Error()) return nil, err } + d.EventRecorder.Event(object, corev1.EventTypeNormal, events.EventReasonGetReplicasSucceed, "Get replicas of resource template successfully.") propagationBinding.Spec.Replicas = replicas propagationBinding.Spec.ReplicaRequirements = replicaRequirements } @@ -828,8 +830,10 @@ func (d *ResourceDetector) BuildClusterResourceBinding(object *unstructured.Unst replicas, replicaRequirements, err := d.ResourceInterpreter.GetReplicas(object) if err != nil { klog.Errorf("Failed to customize replicas for %s(%s), %v", object.GroupVersionKind(), object.GetName(), err) + d.EventRecorder.Event(object, corev1.EventTypeWarning, events.EventReasonGetReplicasFailed, err.Error()) return nil, err } + d.EventRecorder.Event(object, corev1.EventTypeNormal, events.EventReasonGetReplicasSucceed, "Get replicas of resource template successfully.") binding.Spec.Replicas = replicas binding.Spec.ReplicaRequirements = replicaRequirements } diff --git a/pkg/events/events.go b/pkg/events/events.go index 8e3e945b2247..ae899750f571 100644 --- a/pkg/events/events.go +++ b/pkg/events/events.go @@ -118,6 +118,10 @@ const ( EventReasonGetDependenciesSucceed = "GetDependenciesSucceed" // EventReasonGetDependenciesFailed indicates get dependencies of resource template failed. EventReasonGetDependenciesFailed = "GetDependenciesFailed" + // EventReasonGetReplicasSucceed indicates get replicas of resource template succeed. + EventReasonGetReplicasSucceed = "GetReplicasSucceed" + // EventReasonGetReplicasFailed indicates get replicas of resource template failed. + EventReasonGetReplicasFailed = "GetReplicasFailed" // EventReasonPreemptPolicySucceed indicates policy preemption of resource template succeed. EventReasonPreemptPolicySucceed = "PreemptPolicySucceed" // EventReasonPreemptPolicyFailed indicates policy preemption of resource template failed.