/** * Gets the tolerance window in milliseconds for the {@link DefaultFailureInterpreter} * that comes with a {@link CircuitBreaker} by default. * * @see DefaultFailureInterpreter * * @return length of the window in milliseconds */ @ManagedAttribute public long getWindowMillis() { return ((DefaultFailureInterpreter) super.getFailureInterpreter()).getWindowMillis(); }
private void configureDefaultFailureInterpreter(String name, long resetMillis, CircuitBreaker circuit) { DefaultFailureInterpreter fi = (DefaultFailureInterpreter) circuit.getFailureInterpreter(); Integer limitOverride = getIntegerPropertyOverrideValue(name, LIMIT_KEY); if (limitOverride != null) { fi.setLimit(limitOverride); } Long windowMillisOverride = getLongPropertyOverrideValue(name, WINDOWMILLIS_KEY); if (windowMillisOverride != null) { fi.setWindowMillis(windowMillisOverride); } logger.info( "Created CircuitBreaker '{}', limit={}, windowMillis={}, resetMillis={}", new Object[] { name, fi.getLimit(), fi.getWindowMillis(), resetMillis }); }