package stats
These stats are scoped to com.twitter.finagle.stats for historical reasons.
They used to be in the finagle-core package, although we moved them
because we found they didn't depend on anything finagle-specific. To ease
the transition, we kept the namespace.
- Alphabetic
- By Inheritance
- stats
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
-
abstract
class
AbstractStatsReceiver
extends StatsReceiver
For Java clients that want to implement a StatsReceiver.
-
class
BlacklistStatsReceiver
extends StatsReceiver with DelegatingStatsReceiver
A blacklisting StatsReceiver.
A blacklisting StatsReceiver. If the name for a metric is found to be blacklisted, nothing is recorded.
-
case class
BucketAndCount
(lowerLimit: Long, upperLimit: Long, count: Int) extends Product with Serializable
Buckets consist of a lower limit and an upper limit.
Buckets consist of a lower limit and an upper limit. In histograms, all values that fall inside these limits are counted as the same.
The lower limit is inclusive and the upper limit is exclusive
- count
number of data points which landed in that bucket.
-
class
CategorizingExceptionStatsHandler
extends ExceptionStatsHandler
Basic implementation of exception stat recording that allows exceptions to be categorised and optional rollup.
-
trait
Counter
extends AnyRef
A writeable Counter.
A writeable Counter. Only sums are kept of Counters. An example Counter is "number of requests served".
-
trait
DelegatingStatsReceiver
extends AnyRef
Should be mixed into StatsReceivers that delegate to other StatsReceivers.
-
trait
ExceptionStatsHandler
extends AnyRef
Exception Stats Recorder.
-
trait
Gauge
extends AnyRef
Exposes the value of a function.
Exposes the value of a function. For example, one could add a gauge for a computed health metric.
-
trait
HistogramDetail
extends AnyRef
Details of a histogram's data points.
-
class
InMemoryStatsReceiver
extends WithHistogramDetails with StatsReceiver
An in-memory implementation of StatsReceiver, which is mostly used for testing.
An in-memory implementation of StatsReceiver, which is mostly used for testing.
Note that an InMemoryStatsReceiver does not conflate
Seq("a", "b")andSeq("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
-
abstract
class
NameTranslatingStatsReceiver
extends StatsReceiver with DelegatingStatsReceiver
A StatsReceiver receiver proxy that translates all counter, stat, and gauge names according to a
translatefunction. -
class
NullStatsReceiver
extends StatsReceiver
A no-op StatsReceiver.
A no-op StatsReceiver. Metrics are not recorded, making this receiver useful in unit tests and as defaults in situations where metrics are not strictly required.
-
trait
ReadableCounter
extends Counter
A variation of Counter that also supports reading of the current value via the
applymethod. -
trait
ReadableStat
extends Stat
A variation of Stat that also supports reading of the current time series via the
applymethod. -
class
RollupStatsReceiver
extends StatsReceiver with DelegatingStatsReceiver with Proxy
A RollupStatsReceiver reports stats on multiple Counter/Stat/Gauge based on the sequence of names you pass.
A RollupStatsReceiver reports stats on multiple Counter/Stat/Gauge based on the sequence of names you pass. e.g. counter("errors", "clientErrors", "java_net_ConnectException").incr() will actually increment those three counters: - "/errors" - "/errors/clientErrors" - "/errors/clientErrors/java_net_ConnectException"
-
trait
Stat
extends AnyRef
An append-only collection of time-series data.
An append-only collection of time-series data. Example Stats are "queue depth" or "query width in a stream of requests".
Utilities for timing synchronous execution and asynchronous execution are on the companion object (Stat.time(Stat) and Stat.timeFuture(Stat).
-
trait
StatsReceiver
extends AnyRef
An interface for recording metrics.
An interface for recording metrics. Named Counters, Stats, and Gauges can be accessed through the corresponding methods of this class.
- See also
StatsReceivers for a Java-friendly API.
- trait StatsReceiverProxy extends StatsReceiver with DelegatingStatsReceiver
- trait StatsReceiverWithCumulativeGauges extends StatsReceiver
-
trait
WithHistogramDetails
extends AnyRef
Allow StatsReceivers to provide snapshots of histogram counts.
Allow StatsReceivers to provide snapshots of histogram counts. Implementations must expose a map where keys are the name of the stat and values are the contents of the histogram.
Value Members
- object AggregateWithHistogramDetails
-
object
BroadcastCounter
BroadcastCounter is a helper object that create a Counter wrapper around multiple Counters (n).
BroadcastCounter is a helper object that create a Counter wrapper around multiple Counters (n). For performance reason, we have specialized cases if n == (0, 1, 2, 3 or 4)
-
object
BroadcastStat
BroadcastStat is a helper object that create a Counter wrapper around multiple Stats (n).
BroadcastStat is a helper object that create a Counter wrapper around multiple Stats (n). For performance reason, we have specialized cases if n == (0, 1, 2, 3 or 4)
-
object
BroadcastStatsReceiver
BroadcastStatsReceiver is a helper object that create a StatsReceiver wrapper around multiple StatsReceivers (n).
- object DelegatingStatsReceiver
-
object
ExceptionStatsHandler
API for deciding where request exceptions are reported in stats.
API for deciding where request exceptions are reported in stats. Typical implementations may report any cancellations or validation errors separately so success rate can from valid non cancelled requests.
- See also
Null for a no-op handler.
-
object
JStats
Stat utility methods for ease of use from java.
- object NullStatsReceiver extends NullStatsReceiver
-
object
Stat
Helpers for working with histograms.
Helpers for working with histograms.
Java-friendly versions can be found in com.twitter.finagle.stats.JStats.
- object StatsReceiver
-
object
StatsReceivers
StatsReceiver utility methods for ease of use from java.