Package com.yammer.metrics.core
Class WavefrontHistogram
- java.lang.Object
-
- com.yammer.metrics.core.Histogram
-
- com.yammer.metrics.core.WavefrontHistogram
-
- All Implemented Interfaces:
com.yammer.metrics.core.Metric,com.yammer.metrics.core.Sampling,com.yammer.metrics.core.Summarizable
public class WavefrontHistogram extends com.yammer.metrics.core.Histogram implements com.yammer.metrics.core.MetricWavefront implementation ofHistogram.- Author:
- Tim Schmidt (tim@wavefront.com).
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classWavefrontHistogram.MinuteBin
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description List<WavefrontHistogram.MinuteBin>bins(boolean clear)Aggregates all the bins prior to the current minute This is because threads might be updating the current minute bin while the bins() method is invokedvoidbulkUpdate(List<Double> means, List<Integer> counts)Bulk-update this histogram with a set of centroids.voidclear()Note - We override the behavior of the clear() method.longcount()static WavefrontHistogramget(com.yammer.metrics.core.MetricName metricName)static WavefrontHistogramget(com.yammer.metrics.core.MetricsRegistry registry, com.yammer.metrics.core.MetricName metricName)static WavefrontHistogramget(com.yammer.metrics.core.MetricsRegistry registry, com.yammer.metrics.core.MetricName metricName, int compression)static WavefrontHistogramget(com.yammer.metrics.core.MetricsRegistry registry, com.yammer.metrics.core.MetricName metricName, int accuracy, Supplier<Long> clock)static WavefrontHistogramget(com.yammer.metrics.core.MetricsRegistry registry, com.yammer.metrics.core.MetricName metricName, Supplier<Long> clock)com.yammer.metrics.stats.SnapshotgetSnapshot()doublemax()doublemean()doublemin()<T> voidprocessWith(com.yammer.metrics.core.MetricProcessor<T> metricProcessor, com.yammer.metrics.core.MetricName metricName, T t)doublestdDev()doublesum()voidupdate(double value)voidupdate(int value)voidupdate(long value)
-
-
-
Method Detail
-
get
public static WavefrontHistogram get(com.yammer.metrics.core.MetricName metricName)
-
get
public static WavefrontHistogram get(com.yammer.metrics.core.MetricsRegistry registry, com.yammer.metrics.core.MetricName metricName)
-
get
public static WavefrontHistogram get(com.yammer.metrics.core.MetricsRegistry registry, com.yammer.metrics.core.MetricName metricName, int compression)
-
get
public static WavefrontHistogram get(com.yammer.metrics.core.MetricsRegistry registry, com.yammer.metrics.core.MetricName metricName, Supplier<Long> clock)
-
get
public static WavefrontHistogram get(com.yammer.metrics.core.MetricsRegistry registry, com.yammer.metrics.core.MetricName metricName, int accuracy, Supplier<Long> clock)
-
bins
public List<WavefrontHistogram.MinuteBin> bins(boolean clear)
Aggregates all the bins prior to the current minute This is because threads might be updating the current minute bin while the bins() method is invoked- Parameters:
clear- if set to true, will clear the older bins- Returns:
- returns aggregated collection of all the bins prior to the current minute
-
update
public void update(int value)
- Overrides:
updatein classcom.yammer.metrics.core.Histogram
-
bulkUpdate
public void bulkUpdate(List<Double> means, List<Integer> counts)
Bulk-update this histogram with a set of centroids.- Parameters:
means- the centroid valuescounts- the centroid weights/sample counts
-
update
public void update(double value)
-
update
public void update(long value)
- Overrides:
updatein classcom.yammer.metrics.core.Histogram
-
mean
public double mean()
- Specified by:
meanin interfacecom.yammer.metrics.core.Summarizable- Overrides:
meanin classcom.yammer.metrics.core.Histogram
-
min
public double min()
- Specified by:
minin interfacecom.yammer.metrics.core.Summarizable- Overrides:
minin classcom.yammer.metrics.core.Histogram
-
max
public double max()
- Specified by:
maxin interfacecom.yammer.metrics.core.Summarizable- Overrides:
maxin classcom.yammer.metrics.core.Histogram
-
count
public long count()
- Overrides:
countin classcom.yammer.metrics.core.Histogram
-
sum
public double sum()
- Specified by:
sumin interfacecom.yammer.metrics.core.Summarizable- Overrides:
sumin classcom.yammer.metrics.core.Histogram
-
stdDev
public double stdDev()
- Specified by:
stdDevin interfacecom.yammer.metrics.core.Summarizable- Overrides:
stdDevin classcom.yammer.metrics.core.Histogram
-
clear
public void clear()
Note - We override the behavior of the clear() method. In the super class, we would clear all the recorded values.- Overrides:
clearin classcom.yammer.metrics.core.Histogram
-
getSnapshot
public com.yammer.metrics.stats.Snapshot getSnapshot()
- Specified by:
getSnapshotin interfacecom.yammer.metrics.core.Sampling- Overrides:
getSnapshotin classcom.yammer.metrics.core.Histogram
-
processWith
public <T> void processWith(com.yammer.metrics.core.MetricProcessor<T> metricProcessor, com.yammer.metrics.core.MetricName metricName, T t) throws Exception- Specified by:
processWithin interfacecom.yammer.metrics.core.Metric- Overrides:
processWithin classcom.yammer.metrics.core.Histogram- Throws:
Exception
-
-