Class

com.twitter.finagle.stats

InMemoryStatsReceiver

Related Doc: package stats

Permalink

class InMemoryStatsReceiver extends StatsReceiver with WithHistogramDetails

An in-memory implementation of StatsReceiver, which is mostly used for testing.

Note that an InMemoryStatsReceiver does not conflate Seq("a", "b") and Seq("a/b") names no matter how they look when printed.

val isr = new InMemoryStatsReceiver
isr.counter("a", "b", "foo")
isr.counter("a/b", "bar")

isr.print(Console.out) // will print two lines "a/b/foo 0" and "a/b/bar 0"

assert(isr.counters(Seq("a", "b", "foo") == 0)) // ok
assert(isr.counters(Seq("a", "b", "bar") == 0)) // fail
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. InMemoryStatsReceiver
  2. WithHistogramDetails
  3. StatsReceiver
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new InMemoryStatsReceiver()

    Permalink

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. def addGauge(v: Verbosity, name: String*)(f: ⇒ Float): Gauge

    Permalink

    Creates a Gauge of the given name.

    Creates a Gauge of the given name.

    Definition Classes
    InMemoryStatsReceiverStatsReceiver
  5. def addGauge(name: String*)(f: ⇒ Float): Gauge

    Permalink

    Add the function f as a gauge with the given name.

    Add the function f as a gauge with the given name.

    The returned gauge value is only weakly referenced by the StatsReceiver, and if garbage collected will eventually cease to be a part of this measurement: thus, it needs to be retained by the caller. Or put another way, the measurement is only guaranteed to exist as long as there exists a strong reference to the returned gauge and typically should be stored in a member variable.

    Measurements under the same name are added together.

    Definition Classes
    StatsReceiver
    See also

    java.lang.ref.WeakReference

    StatsReceiver.provideGauge when there is not a good location to store the returned gauge that can give the desired lifecycle.

  6. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  7. def clear(): Unit

    Permalink

    Clears all registered counters, gauges and stats.

    Clears all registered counters, gauges and stats.

    Note

    this is not atomic. If new metrics are added while this method is executing, those metrics may remain.

  8. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  9. def counter(v: Verbosity, name: String*): ReadableCounter

    Permalink

    Creates a ReadableCounter of the given name.

    Creates a ReadableCounter of the given name.

    Definition Classes
    InMemoryStatsReceiverStatsReceiver
  10. def counter(name: String*): ReadableCounter

    Permalink

    Get a counter with the given name.

    Get a counter with the given name.

    Definition Classes
    InMemoryStatsReceiverStatsReceiver
  11. val counters: Map[Seq[String], Long]

    Permalink
  12. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  13. def equals(arg0: Any): Boolean

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  15. val gauges: Map[Seq[String], () ⇒ Float]

    Permalink
  16. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  17. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  18. def histogramDetails: Map[String, HistogramDetail]

    Permalink
  19. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  20. def isNull: Boolean

    Permalink

    Accurately indicates if this is a NullStatsReceiver.

    Accurately indicates if this is a NullStatsReceiver. Because equality is not forwarded via scala.Proxy, this is helpful to check for a NullStatsReceiver.

    Definition Classes
    StatsReceiver
  21. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  22. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  23. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  24. def print(p: PrintStream): Unit

    Permalink

    Dumps this in-memory stats receiver to the given PrintStream.

  25. def provideGauge(name: String*)(f: ⇒ Float): Unit

    Permalink

    Register a function f as a gauge with the given name that has a lifecycle with no end.

    Register a function f as a gauge with the given name that has a lifecycle with no end.

    This measurement exists in perpetuity.

    Measurements under the same name are added together.

    Definition Classes
    StatsReceiver
    See also

    StatsReceiver.addGauge if you can properly control the lifecycle of the returned gauge.

  26. def repr: InMemoryStatsReceiver

    Permalink

    Specifies the representative receiver.

    Specifies the representative receiver. This is in order to expose an object we can use for comparison so that global stats are only reported once per receiver.

    Definition Classes
    InMemoryStatsReceiverStatsReceiver
  27. final def scope(namespaces: String*): StatsReceiver

    Permalink

    Prepend namespace and namespaces to the names of the returned StatsReceiver.

    Prepend namespace and namespaces to the names of the returned StatsReceiver.

    For example:

    statsReceiver.scope("client", "backend", "pool").counter("adds")

    will generate a counter named /client/backend/pool/adds.

    Definition Classes
    StatsReceiver
    Annotations
    @varargs()
  28. def scope(namespace: String): StatsReceiver

    Permalink

    Prepend namespace to the names of the returned StatsReceiver.

    Prepend namespace to the names of the returned StatsReceiver.

    For example:

    statsReceiver.scope("client").counter("adds")
    statsReceiver.scope("client").scope("backend").counter("adds")

    will generate counters named /client/adds and /client/backend/adds.

    Definition Classes
    StatsReceiver
  29. def scopeSuffix(suffix: String): StatsReceiver

    Permalink

    Prepend a suffix value to the next scope.

    Prepend a suffix value to the next scope.

    For example:

    statsReceiver.scopeSuffix("toto").scope("client").counter("adds")

    will generate a counter named /client/toto/adds.

    Definition Classes
    StatsReceiver
  30. def stat(v: Verbosity, name: String*): ReadableStat

    Permalink

    Creates a ReadableStat of the given name.

    Creates a ReadableStat of the given name.

    Definition Classes
    InMemoryStatsReceiverStatsReceiver
  31. def stat(name: String*): ReadableStat

    Permalink

    Get a stat with the given name.

    Get a stat with the given name.

    Definition Classes
    InMemoryStatsReceiverStatsReceiver
  32. val stats: Map[Seq[String], Seq[Float]]

    Permalink
  33. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  34. def toString(): String

    Permalink
    Definition Classes
    InMemoryStatsReceiver → AnyRef → Any
  35. val verbosity: Map[Seq[String], Verbosity]

    Permalink
  36. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Deprecated Value Members

  1. def counter0(name: String): Counter

    Permalink

    Get a counter with the given name.

    Get a counter with the given name.

    This method is a convenience for Java programs, but is no longer needed because StatsReceivers.counter is usable from java.

    Definition Classes
    StatsReceiver
    Annotations
    @deprecated
    Deprecated

    (Since version 2017-6-16) Use vararg counter() instead

  2. def stat0(name: String): Stat

    Permalink

    Get a stat with the given name.

    Get a stat with the given name. This method is a convenience for Java programs, but is no longer needed because StatsReceivers.counter is usable from java.

    Definition Classes
    StatsReceiver
    Annotations
    @deprecated
    Deprecated

    (Since version 2017-6-16) Use vararg stat() instead

Inherited from WithHistogramDetails

Inherited from StatsReceiver

Inherited from AnyRef

Inherited from Any

Ungrouped