From bbc95f9d79ab6c9d0fa65b4e2acbdb2cd87ed5c1 Mon Sep 17 00:00:00 2001 From: Daniel Mitterdorfer Date: Wed, 25 Sep 2019 07:54:16 +0200 Subject: [PATCH] Emit log message when parent circuit breaker trips (#47000) We emit a debug log message whenever a child circuit breaker trips (in `ChildMemoryCircuitBreaker#circuitBreak(String, long)`) but we never emit a log message when the parent circuit breaker trips. As this is more likely to happen with the real memory circuit breaker it is not possible to detect this in the logs. With this commit we add a log message on the same log level (debug) when the parent circuit breaker trips. --- .../indices/breaker/HierarchyCircuitBreakerService.java | 1 + 1 file changed, 1 insertion(+) diff --git a/server/src/main/java/org/elasticsearch/indices/breaker/HierarchyCircuitBreakerService.java b/server/src/main/java/org/elasticsearch/indices/breaker/HierarchyCircuitBreakerService.java index 5797843161c59..536d0b15b5f23 100644 --- a/server/src/main/java/org/elasticsearch/indices/breaker/HierarchyCircuitBreakerService.java +++ b/server/src/main/java/org/elasticsearch/indices/breaker/HierarchyCircuitBreakerService.java @@ -339,6 +339,7 @@ public void checkParentLimit(long newBytesReserved, String label) throws Circuit // child circuit breakers is categorized as transient or permanent. CircuitBreaker.Durability durability = memoryUsed.transientChildUsage >= memoryUsed.permanentChildUsage ? CircuitBreaker.Durability.TRANSIENT : CircuitBreaker.Durability.PERMANENT; + logger.debug("{}", message); throw new CircuitBreakingException(message.toString(), memoryUsed.totalUsage, parentLimit, durability); } }