public static class Timer.Builder
extends java.lang.Object
Modifier and Type | Method and Description |
---|---|
Timer.Builder |
description(java.lang.String description) |
Timer.Builder |
distributionStatisticBufferLength(java.lang.Integer bufferLength)
Statistics emanating from a timer 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).
|
Timer.Builder |
distributionStatisticExpiry(java.time.Duration expiry)
Statistics emanating from a timer 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).
|
Timer.Builder |
maximumExpectedValue(java.time.Duration max)
Sets the maximum value that this timer is expected to observe.
|
Timer.Builder |
minimumExpectedValue(java.time.Duration min)
Sets the minimum value that this timer is expected to observe.
|
Timer.Builder |
pauseDetector(PauseDetector pauseDetector)
Sets the pause detector implementation to use for this timer.
|
Timer.Builder |
percentilePrecision(java.lang.Integer digitsOfPrecision)
Determines the number of digits of precision to maintain on the dynamic range histogram used to compute
percentile approximations.
|
Timer.Builder |
publishPercentileHistogram()
Adds histogram buckets used to generate aggregable percentile approximations in monitoring
systems that have query facilities to do so (e.g.
|
Timer.Builder |
publishPercentileHistogram(java.lang.Boolean enabled)
Adds histogram buckets used to generate aggregable percentile approximations in monitoring
systems that have query facilities to do so (e.g.
|
Timer.Builder |
publishPercentiles(double... percentiles)
Produces an additional time series for each requested percentile.
|
Timer |
register(MeterRegistry registry)
Add the timer to a single registry, or return an existing timer in that registry.
|
Timer.Builder |
serviceLevelObjectives(java.time.Duration... slos)
Publish at a minimum a histogram containing your defined service level objective (SLO) boundaries.
|
Timer.Builder |
sla(java.time.Duration... sla)
Deprecated.
Use {
serviceLevelObjectives(Duration...) } instead. "Service Level Agreement" is
more formally the agreement between an engineering organization and the business. Service Level Objectives
are set more conservatively than the SLA to provide some wiggle room while still satisfying the business
requirement. SLOs are the threshold we intend to measure against, then. |
Timer.Builder |
tag(java.lang.String key,
java.lang.String value) |
Timer.Builder |
tags(java.lang.Iterable<Tag> tags) |
Timer.Builder |
tags(java.lang.String... tags) |
public Timer.Builder tags(java.lang.String... tags)
tags
- Must be an even number of arguments representing key/value pairs of tags.public Timer.Builder tags(java.lang.Iterable<Tag> tags)
tags
- Tags to add to the eventual timer.public Timer.Builder tag(java.lang.String key, java.lang.String value)
key
- The tag key.value
- The tag value.public Timer.Builder publishPercentiles(@Nullable double... percentiles)
publishPercentileHistogram()
to publish a histogram that can be used to generate aggregable percentile approximations.percentiles
- Percentiles to compute and publish. The 95th percentile should be expressed as 0.95
.public Timer.Builder percentilePrecision(@Nullable java.lang.Integer digitsOfPrecision)
digitsOfPrecision
- The digits of precision to maintain for percentile approximations.public Timer.Builder publishPercentileHistogram()
histogram_quantile
,
Atlas' :percentiles
).public Timer.Builder publishPercentileHistogram(@Nullable java.lang.Boolean enabled)
histogram_quantile
,
Atlas' :percentiles
).enabled
- Determines whether percentile histograms should be published.@Deprecated public Timer.Builder sla(@Nullable java.time.Duration... sla)
serviceLevelObjectives(Duration...)
} instead. "Service Level Agreement" is
more formally the agreement between an engineering organization and the business. Service Level Objectives
are set more conservatively than the SLA to provide some wiggle room while still satisfying the business
requirement. SLOs are the threshold we intend to measure against, then.publishPercentileHistogram()
, the boundaries defined
here are included alongside other buckets used to generate aggregable percentile approximations.sla
- Publish SLO boundaries in the set of histogram buckets shipped to the monitoring system.public Timer.Builder serviceLevelObjectives(@Nullable java.time.Duration... slos)
publishPercentileHistogram()
, the boundaries defined
here are included alongside other buckets used to generate aggregable percentile approximations.slos
- Publish SLO boundaries in the set of histogram buckets shipped to the monitoring system.public Timer.Builder minimumExpectedValue(@Nullable java.time.Duration min)
min
- The minimum value that this timer is expected to observe.public Timer.Builder maximumExpectedValue(@Nullable java.time.Duration max)
max
- The maximum value that this timer is expected to observe.public Timer.Builder distributionStatisticExpiry(@Nullable java.time.Duration expiry)
distributionStatisticBufferLength(Integer)
.expiry
- The amount of time samples are accumulated to a histogram before it is reset and rotated.public Timer.Builder distributionStatisticBufferLength(@Nullable java.lang.Integer bufferLength)
distributionStatisticExpiry(Duration)
, with this buffer length.bufferLength
- The number of histograms to keep in the ring buffer.public Timer.Builder pauseDetector(@Nullable PauseDetector pauseDetector)
MeterRegistry.Config.pauseDetector(PauseDetector)
.pauseDetector
- The pause detector implementation to use.NoPauseDetector
,
ClockDriftPauseDetector
public Timer.Builder description(@Nullable java.lang.String description)
description
- Description text of the eventual timer.public Timer register(MeterRegistry registry)
registry
- A registry to add the timer to, if it doesn't already exist.