nl.grons.sentries.core

MetricSentry

class MetricSentry extends ChainableSentry

Sentry that collects metric of invocations. A new instance can be obtained through the SentrySupport mixin.

The following metrics are created:

- timer "all" for all invocations - meter "notAvailable" for invocations leading to a NotAvailableException, e.g. all invocations blocked by a sentry - meter "fail" for other failed invocations

Note that in other to make effective use of the "notAvailable" meter, this sentry must be the first sentry in the chain.

This sentry can not be used in the same sentry chain as the TimerSentry.

Linear Supertypes
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Hide All
  2. Show all
  1. MetricSentry
  2. ChainableSentry
  3. NamedSentry
  4. Sentry
  5. AnyRef
  6. Any
Visibility
  1. Public
  2. All

Instance Constructors

  1. new MetricSentry (owner: Class[_], resourceName: String)

Value Members

  1. def != (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  2. def != (arg0: Any): Boolean

    Attributes
    final
    Definition Classes
    Any
  3. def ## (): Int

    Attributes
    final
    Definition Classes
    AnyRef → Any
  4. def == (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  5. def == (arg0: Any): Boolean

    Attributes
    final
    Definition Classes
    Any
  6. def andThen (s: Sentry): Sentry

    Composes two instances of Sentry in a new Sentry, with this sentries context applied first.

    Composes two instances of Sentry in a new Sentry, with this sentries context applied first.

    returns

    a new sentry t such that t(x) == s(this(x))

    Definition Classes
    Sentry
  7. def apply [T] (r: ⇒ T): T

    Run the given code block in the context of this sentry, and return its value.

    Run the given code block in the context of this sentry, and return its value.

    Definition Classes
    MetricSentrySentry
  8. def asInstanceOf [T0] : T0

    Attributes
    final
    Definition Classes
    Any
  9. def clone (): AnyRef

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  10. def compose (s: Sentry): Sentry

    Composes two instances of Sentry in a new Sentry, with this sentries context applied last.

    Composes two instances of Sentry in a new Sentry, with this sentries context applied last.

    returns

    a new sentry t such that t(x) == this(s(x))

    Definition Classes
    Sentry
  11. def eq (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  12. def equals (arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  13. def finalize (): Unit

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  14. def getClass (): java.lang.Class[_]

    Attributes
    final
    Definition Classes
    AnyRef → Any
  15. def hashCode (): Int

    Definition Classes
    AnyRef → Any
  16. def isInstanceOf [T0] : Boolean

    Attributes
    final
    Definition Classes
    Any
  17. def ne (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  18. def notify (): Unit

    Attributes
    final
    Definition Classes
    AnyRef
  19. def notifyAll (): Unit

    Attributes
    final
    Definition Classes
    AnyRef
  20. def reset (): Unit

    Go back to the initial state.

    Go back to the initial state.

    Definition Classes
    MetricSentrySentry
  21. val resourceName : String

    returns

    a string describing the resource that is protected, e.g. "mysql:server-b.com:3336". It is used in exceptions and visible through JMX.

    Definition Classes
    MetricSentryNamedSentry
  22. val sentryType : String

    returns

    a simple describing identifier that is unique per sentry chain, e.g. "rateLimit". ResourceName plus sentryType uniquely name each sentry. The sentry registry enforces this. The sentryType is also used in JMX to uniquely name bean properties for a resource. null for sentry wrappers, that must not be registered.

    Definition Classes
    MetricSentryChainableSentry
  23. def synchronized [T0] (arg0: ⇒ T0): T0

    Attributes
    final
    Definition Classes
    AnyRef
  24. def toString (): String

    Definition Classes
    AnyRef → Any
  25. def wait (): Unit

    Attributes
    final
    Definition Classes
    AnyRef
    Annotations
    @throws()
  26. def wait (arg0: Long, arg1: Int): Unit

    Attributes
    final
    Definition Classes
    AnyRef
    Annotations
    @throws()
  27. def wait (arg0: Long): Unit

    Attributes
    final
    Definition Classes
    AnyRef
    Annotations
    @throws()

Inherited from ChainableSentry

Inherited from NamedSentry

Inherited from Sentry

Inherited from AnyRef

Inherited from Any