Package io.micrometer.core.instrument
Class AbstractDistributionSummary
java.lang.Object
io.micrometer.core.instrument.AbstractMeter
io.micrometer.core.instrument.AbstractDistributionSummary
- All Implemented Interfaces:
HistogramSupport
,DistributionSummary
,Meter
- Direct Known Subclasses:
CumulativeDistributionSummary
,DropwizardDistributionSummary
,StepDistributionSummary
public abstract class AbstractDistributionSummary
extends AbstractMeter
implements DistributionSummary
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.micrometer.core.instrument.DistributionSummary
DistributionSummary.Builder
Nested classes/interfaces inherited from interface io.micrometer.core.instrument.Meter
Meter.Builder, Meter.Id, Meter.MeterProvider<T extends Meter>, Meter.Type
-
Field Summary
-
Constructor Summary
ModifierConstructorDescriptionprotected
AbstractDistributionSummary
(Meter.Id id, double scale, Histogram histogram) Creates anAbstractDistributionSummary
instance.protected
AbstractDistributionSummary
(Meter.Id id, Clock clock, DistributionStatisticConfig distributionStatisticConfig, double scale, boolean supportsAggregablePercentiles) -
Method Summary
Modifier and TypeMethodDescriptionprotected static Histogram
defaultHistogram
(Clock clock, DistributionStatisticConfig distributionStatisticConfig, boolean supportsAggregablePercentiles) Creates a default histogram.final void
record
(double amount) Updates the statistics kept by the summary with the specified amount.protected abstract void
recordNonNegative
(double amount) Summary statistics should be published off of a single snapshot instance so that, for example, there isn't disagreement between the distribution's bucket counts because more events continue to stream in.Methods inherited from class io.micrometer.core.instrument.AbstractMeter
equals, getId, hashCode
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.micrometer.core.instrument.DistributionSummary
count, histogramCountAtValue, max, mean, measure, percentile, totalAmount
Methods inherited from interface io.micrometer.core.instrument.distribution.HistogramSupport
takeSnapshot
-
Field Details
-
histogram
-
-
Constructor Details
-
AbstractDistributionSummary
protected AbstractDistributionSummary(Meter.Id id, Clock clock, DistributionStatisticConfig distributionStatisticConfig, double scale, boolean supportsAggregablePercentiles) -
AbstractDistributionSummary
Creates anAbstractDistributionSummary
instance.- Parameters:
id
- meter IDscale
- scalehistogram
- histogram- Since:
- 1.11.0
-
-
Method Details
-
defaultHistogram
protected static Histogram defaultHistogram(Clock clock, DistributionStatisticConfig distributionStatisticConfig, boolean supportsAggregablePercentiles) Creates a default histogram.- Parameters:
clock
- clockdistributionStatisticConfig
- distribution statistic configurationsupportsAggregablePercentiles
- whether to support aggregable percentiles- Returns:
- a default histogram
- Since:
- 1.11.0
-
record
public final void record(double amount) Description copied from interface:DistributionSummary
Updates the statistics kept by the summary with the specified amount.- Specified by:
record
in interfaceDistributionSummary
- Parameters:
amount
- Amount for an event being measured. For example, if the size in bytes of responses from a server. If the amount is less than 0 the value will be dropped.
-
recordNonNegative
protected abstract void recordNonNegative(double amount) -
takeSnapshot
Description copied from interface:HistogramSupport
Summary statistics should be published off of a single snapshot instance so that, for example, there isn't disagreement between the distribution's bucket counts because more events continue to stream in.- Specified by:
takeSnapshot
in interfaceHistogramSupport
- Returns:
- A snapshot of all distribution statistics at a point in time.
-