Package com.codahale.metrics
Class MetricRegistry
java.lang.Object
com.codahale.metrics.MetricRegistry
- Direct Known Subclasses:
NoopMetricRegistry
A registry of metric instances.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfaceMetricRegistry.MetricSupplier<T extends Metric> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddListener(MetricRegistryListener listener) Adds aMetricRegistryListenerto a collection of listeners that will be notified on metric creation.protected ConcurrentMap<String,Metric> buildMap()Creates a newConcurrentMapimplementation for use inside the registry.counter(String name, MetricRegistry.MetricSupplier<Counter> supplier) <T extends Gauge>
TReturn theGaugeregistered under this name; or create and register a newSettableGaugeif none is registered.<T extends Gauge>
Tgauge(String name, MetricRegistry.MetricSupplier<T> supplier) Returns a map of all the counters in the registry and their names.getCounters(MetricFilter filter) Returns a map of all the counters in the registry and their names which match the given filter.Returns a map of all the gauges in the registry and their names.getGauges(MetricFilter filter) Returns a map of all the gauges in the registry and their names which match the given filter.Returns a map of all the histograms in the registry and their names.getHistograms(MetricFilter filter) Returns a map of all the histograms in the registry and their names which match the given filter.Returns a map of all the meters in the registry and their names.getMeters(MetricFilter filter) Returns a map of all the meters in the registry and their names which match the given filter.A map of metric names to metrics.getNames()Returns a set of the names of all the metrics in the registry.Returns a map of all the timers in the registry and their names.getTimers(MetricFilter filter) Returns a map of all the timers in the registry and their names which match the given filter.histogram(String name, MetricRegistry.MetricSupplier<Histogram> supplier) meter(String name, MetricRegistry.MetricSupplier<Meter> supplier) static StringConcatenates a class name and elements to form a dotted name, eliding any null values or empty strings.static StringConcatenates elements to form a dotted name, eliding any null values or empty strings.<T extends Metric>
TGiven aMetric, registers it under the given name.voidregisterAll(MetricSet metrics) Given a metric set, registers them.voidregisterAll(String prefix, MetricSet metrics) Given a metric set, registers them with the given prefix prepended to their names.<T> Gauge<T>registerGauge(String name, Gauge<T> metric) Given aGauge, registers it under the given name and returns itbooleanRemoves the metric with the given name.voidremoveListener(MetricRegistryListener listener) Removes aMetricRegistryListenerfrom this registry's collection of listeners.voidremoveMatching(MetricFilter filter) Removes all metrics which match the given filter.timer(String name, MetricRegistry.MetricSupplier<Timer> supplier)
-
Constructor Details
-
MetricRegistry
public MetricRegistry()Creates a newMetricRegistry.
-
-
Method Details
-
name
Concatenates elements to form a dotted name, eliding any null values or empty strings.- Parameters:
name- the first element of the namenames- the remaining elements of the name- Returns:
nameandnamesconcatenated by periods
-
name
Concatenates a class name and elements to form a dotted name, eliding any null values or empty strings.- Parameters:
klass- the first element of the namenames- the remaining elements of the name- Returns:
klassandnamesconcatenated by periods
-
buildMap
Creates a newConcurrentMapimplementation for use inside the registry. Override this to create aMetricRegistrywith space- or time-bounded metric lifecycles, for example.- Returns:
- a new
ConcurrentMap
-
registerGauge
Given aGauge, registers it under the given name and returns it- Type Parameters:
T- the type of the gauge's value- Parameters:
name- the name of the gauge- Returns:
- the registered
Gauge - Throws:
IllegalArgumentException- Since:
- 4.2.10
-
register
Given aMetric, registers it under the given name.- Type Parameters:
T- the type of the metric- Parameters:
name- the name of the metricmetric- the metric- Returns:
metric- Throws:
IllegalArgumentException- if the name is already registered or metric variable is null
-
registerAll
Given a metric set, registers them.- Parameters:
metrics- a set of metrics- Throws:
IllegalArgumentException- if any of the names are already registered
-
counter
Return theCounterregistered under this name; or create and register a newCounterif none is registered.- Parameters:
name- the name of the metric- Returns:
- a new or pre-existing
Counter
-
counter
Return theCounterregistered under this name; or create and register a newCounterusing the provided MetricSupplier if none is registered.- Parameters:
name- the name of the metricsupplier- a MetricSupplier that can be used to manufacture a counter.- Returns:
- a new or pre-existing
Counter
-
histogram
Return theHistogramregistered under this name; or create and register a newHistogramif none is registered.- Parameters:
name- the name of the metric- Returns:
- a new or pre-existing
Histogram
-
histogram
Return theHistogramregistered under this name; or create and register a newHistogramusing the provided MetricSupplier if none is registered.- Parameters:
name- the name of the metricsupplier- a MetricSupplier that can be used to manufacture a histogram- Returns:
- a new or pre-existing
Histogram
-
meter
Return theMeterregistered under this name; or create and register a newMeterif none is registered.- Parameters:
name- the name of the metric- Returns:
- a new or pre-existing
Meter
-
meter
Return theMeterregistered under this name; or create and register a newMeterusing the provided MetricSupplier if none is registered.- Parameters:
name- the name of the metricsupplier- a MetricSupplier that can be used to manufacture a Meter- Returns:
- a new or pre-existing
Meter
-
timer
Return theTimerregistered under this name; or create and register a newTimerif none is registered.- Parameters:
name- the name of the metric- Returns:
- a new or pre-existing
Timer
-
timer
Return theTimerregistered under this name; or create and register a newTimerusing the provided MetricSupplier if none is registered.- Parameters:
name- the name of the metricsupplier- a MetricSupplier that can be used to manufacture a Timer- Returns:
- a new or pre-existing
Timer
-
gauge
Return theGaugeregistered under this name; or create and register a newSettableGaugeif none is registered.- Parameters:
name- the name of the metric- Returns:
- a pre-existing
Gaugeor a newSettableGauge - Since:
- 4.2
-
gauge
Return theGaugeregistered under this name; or create and register a newGaugeusing the provided MetricSupplier if none is registered.- Parameters:
name- the name of the metricsupplier- a MetricSupplier that can be used to manufacture a Gauge- Returns:
- a new or pre-existing
Gauge
-
remove
Removes the metric with the given name.- Parameters:
name- the name of the metric- Returns:
- whether or not the metric was removed
-
removeMatching
Removes all metrics which match the given filter.- Parameters:
filter- a filter
-
addListener
Adds aMetricRegistryListenerto a collection of listeners that will be notified on metric creation. Listeners will be notified in the order in which they are added.N.B.: The listener will be notified of all existing metrics when it first registers.
- Parameters:
listener- the listener that will be notified
-
removeListener
Removes aMetricRegistryListenerfrom this registry's collection of listeners.- Parameters:
listener- the listener that will be removed
-
getNames
Returns a set of the names of all the metrics in the registry.- Returns:
- the names of all the metrics
-
getGauges
Returns a map of all the gauges in the registry and their names.- Returns:
- all the gauges in the registry
-
getGauges
Returns a map of all the gauges in the registry and their names which match the given filter.- Parameters:
filter- the metric filter to match- Returns:
- all the gauges in the registry
-
getCounters
Returns a map of all the counters in the registry and their names.- Returns:
- all the counters in the registry
-
getCounters
Returns a map of all the counters in the registry and their names which match the given filter.- Parameters:
filter- the metric filter to match- Returns:
- all the counters in the registry
-
getHistograms
Returns a map of all the histograms in the registry and their names.- Returns:
- all the histograms in the registry
-
getHistograms
Returns a map of all the histograms in the registry and their names which match the given filter.- Parameters:
filter- the metric filter to match- Returns:
- all the histograms in the registry
-
getMeters
Returns a map of all the meters in the registry and their names.- Returns:
- all the meters in the registry
-
getMeters
Returns a map of all the meters in the registry and their names which match the given filter.- Parameters:
filter- the metric filter to match- Returns:
- all the meters in the registry
-
getTimers
Returns a map of all the timers in the registry and their names.- Returns:
- all the timers in the registry
-
getTimers
Returns a map of all the timers in the registry and their names which match the given filter.- Parameters:
filter- the metric filter to match- Returns:
- all the timers in the registry
-
registerAll
Given a metric set, registers them with the given prefix prepended to their names.- Parameters:
prefix- a name prefixmetrics- a set of metrics- Throws:
IllegalArgumentException- if any of the names are already registered
-
getMetrics
Description copied from interface:MetricSetA map of metric names to metrics.- Specified by:
getMetricsin interfaceMetricSet- Returns:
- the metrics
-