Skip to content

Commit eadc11d

Browse files
committed
fix: reducing log level of failure to patch in handleErrorStatusHandler
closes: #2981 Signed-off-by: Steve Hawkins <[email protected]>
1 parent 87ec587 commit eadc11d

File tree

1 file changed

+15
-6
lines changed

1 file changed

+15
-6
lines changed

operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/event/ReconciliationDispatcher.java

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
package io.javaoperatorsdk.operator.processing.event;
22

33
import java.lang.reflect.InvocationTargetException;
4+
import java.net.HttpURLConnection;
45
import java.util.function.Function;
56

67
import org.slf4j.Logger;
78
import org.slf4j.LoggerFactory;
9+
import org.slf4j.event.Level;
810

911
import io.fabric8.kubernetes.api.model.HasMetadata;
1012
import io.fabric8.kubernetes.api.model.KubernetesResourceList;
@@ -216,12 +218,19 @@ public boolean isLastAttempt() {
216218
customResourceFacade.patchStatus(
217219
errorStatusUpdateControl.getResource().orElseThrow(), originalResource);
218220
} catch (Exception ex) {
219-
log.error(
220-
"updateErrorStatus failed for resource: {} with version: {} for error {}",
221-
getUID(resource),
222-
getVersion(resource),
223-
e.getMessage(),
224-
ex);
221+
Level level = Level.ERROR;
222+
if (context.isNextReconciliationImminent()
223+
|| ((ex instanceof KubernetesClientException kcex
224+
&& kcex.getCode() == HttpURLConnection.HTTP_CONFLICT))) {
225+
level = Level.DEBUG; // we'll be reconciling again soon, so don't over log
226+
}
227+
log.atLevel(level)
228+
.log(
229+
"updateErrorStatus failed for resource: {} with version: {} for error {}",
230+
getUID(resource),
231+
getVersion(resource),
232+
e.getMessage(),
233+
ex);
225234
}
226235
}
227236
if (errorStatusUpdateControl.isNoRetry()) {

0 commit comments

Comments
 (0)