@@ -151,6 +151,11 @@ func (r *CeilometerReconciler) Reconcile(ctx context.Context, req ctrl.Request)
151151 // Always patch the instance status when exiting this function so we can
152152 // persist any changes.
153153 defer func () {
154+ // Don't update the status, if reconciler Panics
155+ if r := recover (); r != nil {
156+ Log .Info (fmt .Sprintf ("panic during reconcile %v\n " , r ))
157+ panic (r )
158+ }
154159 condition .RestoreLastTransitionTimes (
155160 & instance .Status .Conditions , savedConditions )
156161 if instance .Status .Conditions .IsUnknown (condition .ReadyCondition ) {
@@ -1821,7 +1826,7 @@ func (r *CeilometerReconciler) SetupWithManager(ctx context.Context, mgr ctrl.Ma
18211826func (r * CeilometerReconciler ) findObjectsForSrc (ctx context.Context , src client.Object ) []reconcile.Request {
18221827 requests := []reconcile.Request {}
18231828
1824- l := log . FromContext (ctx ). WithName ( "Controllers" ). WithName ( "Ceilometer" )
1829+ Log := r . GetLogger (ctx )
18251830
18261831 for _ , field := range ceilometerWatchFields {
18271832 crList := & telemetryv1.CeilometerList {}
@@ -1831,12 +1836,12 @@ func (r *CeilometerReconciler) findObjectsForSrc(ctx context.Context, src client
18311836 }
18321837 err := r .Client .List (ctx , crList , listOps )
18331838 if err != nil {
1834- l .Error (err , fmt .Sprintf ("listing %s for field: %s - %s" , crList .GroupVersionKind ().Kind , field , src .GetNamespace ()))
1839+ Log .Error (err , fmt .Sprintf ("listing %s for field: %s - %s" , crList .GroupVersionKind ().Kind , field , src .GetNamespace ()))
18351840 return requests
18361841 }
18371842
18381843 for _ , item := range crList .Items {
1839- l .Info (fmt .Sprintf ("input source %s changed, reconcile: %s - %s" , src .GetName (), item .GetName (), item .GetNamespace ()))
1844+ Log .Info (fmt .Sprintf ("input source %s changed, reconcile: %s - %s" , src .GetName (), item .GetName (), item .GetNamespace ()))
18401845
18411846 requests = append (requests ,
18421847 reconcile.Request {
@@ -1855,20 +1860,20 @@ func (r *CeilometerReconciler) findObjectsForSrc(ctx context.Context, src client
18551860func (r * CeilometerReconciler ) findObjectForSrc (ctx context.Context , src client.Object ) []reconcile.Request {
18561861 requests := []reconcile.Request {}
18571862
1858- l := log . FromContext (ctx ). WithName ( "Controllers" ). WithName ( "Ceilometer" )
1863+ Log := r . GetLogger (ctx )
18591864
18601865 crList := & telemetryv1.CeilometerList {}
18611866 listOps := & client.ListOptions {
18621867 Namespace : src .GetNamespace (),
18631868 }
18641869 err := r .Client .List (ctx , crList , listOps )
18651870 if err != nil {
1866- l .Error (err , fmt .Sprintf ("listing %s for namespace: %s" , crList .GroupVersionKind ().Kind , src .GetNamespace ()))
1871+ Log .Error (err , fmt .Sprintf ("listing %s for namespace: %s" , crList .GroupVersionKind ().Kind , src .GetNamespace ()))
18671872 return requests
18681873 }
18691874
18701875 for _ , item := range crList .Items {
1871- l .Info (fmt .Sprintf ("input source %s changed, reconcile: %s - %s" , src .GetName (), item .GetName (), item .GetNamespace ()))
1876+ Log .Info (fmt .Sprintf ("input source %s changed, reconcile: %s - %s" , src .GetName (), item .GetName (), item .GetNamespace ()))
18721877
18731878 requests = append (requests ,
18741879 reconcile.Request {
0 commit comments