This is the actual histogram data structure.
This is passed to new event collectors in addition to their own config.
This is a typeclass that is basically just an EventCollector factory.
A Local collection is designed only to be used inside an actor or otherwise thread-safe environment.
Simple sender that just prints the stats to the log
A metric filter is essentially a selector for a metric along with a filter for processing/aggregating the values
Since we are basically requiring every EventCollector to be constructed with a single parameter (which should be a case class), this trait is required to be extended by that parameter.
Anything that eventually expands to a set of raw stats extends this
Configuration class for the metric reporter
Tells a MetricReporter how to filter its Metrics before handing off to a Sender.
The MetricSystem is a set of actors which handle the background operations of dealing with metrics.
The base trait for any exported value from an event collector
A periodic histogram multiplexes a histogram into several with different periods of resetting
A Shared collection is a collection where every metric it returns is completely thread-safe.
Notice - the SharedRate is just a front for sending actor messages.
Used to select one or more values on one or more tags
An aggregation type defined how several values for the same metric (each with different tags) get merged into one value.
A Basic log-scale histogram, mainly designed to measure latency