CircuitBreaker

wvlet.airframe.control.CircuitBreaker
See theCircuitBreaker companion class
object CircuitBreaker extends LogSupport

Attributes

Companion
class
Graph
Supertypes
trait Product
trait Mirror
trait LogSupport
trait LazyLogger
trait LoggingMethods
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type

Members list

Type members

Classlikes

case object CLOSED extends CircuitBreakerState

Attributes

Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
CLOSED.type
case object HALF_OPEN extends CircuitBreakerState

Attributes

Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
HALF_OPEN.type
case object OPEN extends CircuitBreakerState

Attributes

Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
OPEN.type

Inherited types

type MirroredElemLabels <: Tuple

The names of the product elements

The names of the product elements

Attributes

Inherited from:
Mirror
type MirroredLabel <: String

The name of the type

The name of the type

Attributes

Inherited from:
Mirror

Value members

Concrete methods

def newCircuitBreaker(name: String): CircuitBreaker
def withConsecutiveFailures(numFailures: Int): CircuitBreaker

Create a CircuitBreaker that will be open if the number of consecutive failures exceeds the given threshold.

Create a CircuitBreaker that will be open if the number of consecutive failures exceeds the given threshold.

Attributes

def withFailureRate(failureRate: Double, timeWindowMillis: Int): CircuitBreaker

Create a CircuitBreaker that will be open if the failure rate in a time window exceeds the given threshold. The failure rate will be decayed exponentially as time goes.

Create a CircuitBreaker that will be open if the failure rate in a time window exceeds the given threshold. The failure rate will be decayed exponentially as time goes.

Attributes

def withFailureThreshold(numFailures: Int, numExecutions: Int): CircuitBreaker

Create a CircuitBreaker that will be open after observing numFailures out of numExecutions.

Create a CircuitBreaker that will be open after observing numFailures out of numExecutions.

Attributes

Inherited methods

inline protected def debug(inline message: Any, inline cause: Throwable): Unit

Attributes

Inherited from:
LoggingMethods
inline protected def debug(inline message: Any): Unit

Attributes

Inherited from:
LoggingMethods
inline protected def error(inline message: Any, inline cause: Throwable): Unit

Attributes

Inherited from:
LoggingMethods
inline protected def error(inline message: Any): Unit

Attributes

Inherited from:
LoggingMethods
inline protected def info(inline message: Any, inline cause: Throwable): Unit

Attributes

Inherited from:
LoggingMethods
inline protected def info(inline message: Any): Unit

Attributes

Inherited from:
LoggingMethods
inline protected def logAt(inline logLevel: LogLevel, inline message: Any): Unit

Attributes

Inherited from:
LoggingMethods
inline protected def trace(inline message: Any, inline cause: Throwable): Unit

Attributes

Inherited from:
LoggingMethods
inline protected def trace(inline message: Any): Unit

Attributes

Inherited from:
LoggingMethods
inline protected def warn(inline message: Any, inline cause: Throwable): Unit

Attributes

Inherited from:
LoggingMethods
inline protected def warn(inline message: Any): Unit

Attributes

Inherited from:
LoggingMethods