public class DistributionStatisticConfig extends java.lang.Object implements Mergeable<DistributionStatisticConfig>
Timer
and DistributionSummary
.
These statistics include max, percentiles, percentile histograms, and SLA violations.
Many distribution statistics are decayed to give greater weight to recent samples.
Modifier and Type | Class and Description |
---|---|
static class |
DistributionStatisticConfig.Builder |
Modifier and Type | Field and Description |
---|---|
static DistributionStatisticConfig |
DEFAULT |
static DistributionStatisticConfig |
NONE |
Constructor and Description |
---|
DistributionStatisticConfig() |
Modifier and Type | Method and Description |
---|---|
static DistributionStatisticConfig.Builder |
builder() |
java.lang.Integer |
getBufferLength()
Statistics like max, percentiles, and histogram counts decay over time to give greater weight to recent
samples (exception: histogram counts are cumulative for those systems that expect cumulative
histogram buckets).
|
java.time.Duration |
getExpiry()
Statistics like max, percentiles, and histogram counts decay over time to give greater weight to recent
samples (exception: histogram counts are cumulative for those systems that expect cumulative
histogram buckets).
|
java.util.NavigableSet<java.lang.Double> |
getHistogramBuckets(boolean supportsAggregablePercentiles)
For internal use only.
|
java.lang.Double |
getMaximumExpectedValue()
Deprecated.
Use
getMaximumExpectedValueAsDouble() . If you use this method, your code
will not be compatible with code that uses Micrometer 1.3.x. |
java.lang.Double |
getMaximumExpectedValueAsDouble()
The maximum value that the meter is expected to observe.
|
java.lang.Double |
getMinimumExpectedValue()
Deprecated.
Use
getMinimumExpectedValueAsDouble() . If you use this method, your code
will not be compatible with code that uses Micrometer 1.3.x. |
java.lang.Double |
getMinimumExpectedValueAsDouble()
The minimum value that the meter is expected to observe.
|
java.lang.Integer |
getPercentilePrecision()
Determines the number of digits of precision to maintain on the dynamic range histogram used to compute
percentile approximations.
|
double[] |
getPercentiles()
Produces an additional time series for each requested percentile.
|
double[] |
getServiceLevelObjectiveBoundaries()
Publish at a minimum a histogram containing your defined SLO boundaries.
|
double[] |
getSlaBoundaries()
Deprecated.
Use
getServiceLevelObjectiveBoundaries() . If you use this method, your
code will not be compatible with code that uses Micrometer 1.4.x and later. |
java.lang.Boolean |
isPercentileHistogram()
Adds histogram buckets used to generate aggregable percentile approximations in monitoring
systems that have query facilities to do so (e.g.
|
boolean |
isPublishingHistogram() |
boolean |
isPublishingPercentiles() |
DistributionStatisticConfig |
merge(DistributionStatisticConfig parent)
Merges two configurations.
|
public static final DistributionStatisticConfig DEFAULT
public static final DistributionStatisticConfig NONE
public static DistributionStatisticConfig.Builder builder()
public DistributionStatisticConfig merge(DistributionStatisticConfig parent)
merge
in interface Mergeable<DistributionStatisticConfig>
parent
- The configuration to merge with. The parent takes lower precedence than this configuration.public java.util.NavigableSet<java.lang.Double> getHistogramBuckets(boolean supportsAggregablePercentiles)
supportsAggregablePercentiles
- whether it supports aggregable percentiles@Nullable public java.lang.Boolean isPercentileHistogram()
histogram_quantile
,
Atlas' :percentiles
).@Nullable public double[] getPercentiles()
percentileHistogram
to publish a histogram that can be used to generate aggregable percentile approximations.0.95
@Nullable public java.lang.Integer getPercentilePrecision()
@Deprecated @Nullable public java.lang.Double getMinimumExpectedValue()
getMinimumExpectedValueAsDouble()
. If you use this method, your code
will not be compatible with code that uses Micrometer 1.3.x.@Nullable public java.lang.Double getMinimumExpectedValueAsDouble()
@Deprecated @Nullable public java.lang.Double getMaximumExpectedValue()
getMaximumExpectedValueAsDouble()
. If you use this method, your code
will not be compatible with code that uses Micrometer 1.3.x.@Nullable public java.lang.Double getMaximumExpectedValueAsDouble()
@Nullable public java.time.Duration getExpiry()
bufferLength
.@Nullable public java.lang.Integer getBufferLength()
expiry
, with this buffer length.@Nullable @Deprecated public double[] getSlaBoundaries()
getServiceLevelObjectiveBoundaries()
. If you use this method, your
code will not be compatible with code that uses Micrometer 1.4.x and later.percentileHistogram
, the boundaries defined here are included alongside other buckets used to
generate aggregable percentile approximations. If the DistributionStatisticConfig
is meant for
use with a Timer
, the SLA unit is in nanoseconds.@Nullable public double[] getServiceLevelObjectiveBoundaries()
percentileHistogram
, the boundaries defined here are included alongside other buckets used to
generate aggregable percentile approximations. If the DistributionStatisticConfig
is meant for
use with a Timer
, the SLO unit is in nanoseconds.public boolean isPublishingPercentiles()
public boolean isPublishingHistogram()