public class HierarchyCircuitBreakerService extends CircuitBreakerService
Modifier and Type | Field and Description |
---|---|
static Setting<ByteSizeValue> |
FIELDDATA_CIRCUIT_BREAKER_LIMIT_SETTING |
static Setting<java.lang.Double> |
FIELDDATA_CIRCUIT_BREAKER_OVERHEAD_SETTING |
static Setting<CircuitBreaker.Type> |
FIELDDATA_CIRCUIT_BREAKER_TYPE_SETTING |
static Setting<ByteSizeValue> |
IN_FLIGHT_REQUESTS_CIRCUIT_BREAKER_LIMIT_SETTING |
static Setting<java.lang.Double> |
IN_FLIGHT_REQUESTS_CIRCUIT_BREAKER_OVERHEAD_SETTING |
static Setting<CircuitBreaker.Type> |
IN_FLIGHT_REQUESTS_CIRCUIT_BREAKER_TYPE_SETTING |
static Setting<ByteSizeValue> |
REQUEST_CIRCUIT_BREAKER_LIMIT_SETTING |
static Setting<java.lang.Double> |
REQUEST_CIRCUIT_BREAKER_OVERHEAD_SETTING |
static Setting<CircuitBreaker.Type> |
REQUEST_CIRCUIT_BREAKER_TYPE_SETTING |
static Setting<ByteSizeValue> |
TOTAL_CIRCUIT_BREAKER_LIMIT_SETTING |
lifecycle
deprecationLogger, logger, settings
Constructor and Description |
---|
HierarchyCircuitBreakerService(Settings settings,
ClusterSettings clusterSettings) |
Modifier and Type | Method and Description |
---|---|
void |
checkParentLimit(java.lang.String label)
Checks whether the parent breaker has been tripped
|
CircuitBreaker |
getBreaker(java.lang.String name) |
void |
registerBreaker(BreakerSettings breakerSettings)
Allows to register a custom circuit breaker.
|
AllCircuitBreakerStats |
stats() |
CircuitBreakerStats |
stats(java.lang.String name) |
static void |
validateSettings(BreakerSettings[] childrenSettings)
Validate that child settings are valid
|
doClose, doStart, doStop
addLifecycleListener, close, lifecycleState, removeLifecycleListener, start, stop
logDeprecatedSetting, logRemovedSetting, nodeName
public static final Setting<ByteSizeValue> TOTAL_CIRCUIT_BREAKER_LIMIT_SETTING
public static final Setting<ByteSizeValue> FIELDDATA_CIRCUIT_BREAKER_LIMIT_SETTING
public static final Setting<java.lang.Double> FIELDDATA_CIRCUIT_BREAKER_OVERHEAD_SETTING
public static final Setting<CircuitBreaker.Type> FIELDDATA_CIRCUIT_BREAKER_TYPE_SETTING
public static final Setting<ByteSizeValue> REQUEST_CIRCUIT_BREAKER_LIMIT_SETTING
public static final Setting<java.lang.Double> REQUEST_CIRCUIT_BREAKER_OVERHEAD_SETTING
public static final Setting<CircuitBreaker.Type> REQUEST_CIRCUIT_BREAKER_TYPE_SETTING
public static final Setting<ByteSizeValue> IN_FLIGHT_REQUESTS_CIRCUIT_BREAKER_LIMIT_SETTING
public static final Setting<java.lang.Double> IN_FLIGHT_REQUESTS_CIRCUIT_BREAKER_OVERHEAD_SETTING
public static final Setting<CircuitBreaker.Type> IN_FLIGHT_REQUESTS_CIRCUIT_BREAKER_TYPE_SETTING
public HierarchyCircuitBreakerService(Settings settings, ClusterSettings clusterSettings)
public static void validateSettings(BreakerSettings[] childrenSettings) throws java.lang.IllegalStateException
java.lang.IllegalStateException
public CircuitBreaker getBreaker(java.lang.String name)
getBreaker
in class CircuitBreakerService
public AllCircuitBreakerStats stats()
stats
in class CircuitBreakerService
public CircuitBreakerStats stats(java.lang.String name)
stats
in class CircuitBreakerService
public void checkParentLimit(java.lang.String label) throws CircuitBreakingException
CircuitBreakingException
public void registerBreaker(BreakerSettings breakerSettings)
registerBreaker
in class CircuitBreakerService