Class StepMeterRegistry
- java.lang.Object
-
- io.micrometer.core.instrument.MeterRegistry
-
- io.micrometer.core.instrument.push.PushMeterRegistry
-
- io.micrometer.core.instrument.step.StepMeterRegistry
-
- Direct Known Subclasses:
LoggingMeterRegistry
public abstract class StepMeterRegistry extends PushMeterRegistry
Registry that step-normalizes counts and sums to a rate/second over the publishing interval.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class io.micrometer.core.instrument.MeterRegistry
MeterRegistry.Config, MeterRegistry.More
-
-
Field Summary
-
Fields inherited from class io.micrometer.core.instrument.MeterRegistry
clock
-
-
Constructor Summary
Constructors Constructor Description StepMeterRegistry(StepRegistryConfig config, Clock clock)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected DistributionStatisticConfigdefaultHistogramConfig()Every custom registry implementation should define a default histogram expiry at a minimum:protected CounternewCounter(Meter.Id id)Build a new counter to be added to the registry.protected DistributionSummarynewDistributionSummary(Meter.Id id, DistributionStatisticConfig distributionStatisticConfig, double scale)Build a new distribution summary to be added to the registry.protected <T> FunctionCounternewFunctionCounter(Meter.Id id, T obj, java.util.function.ToDoubleFunction<T> countFunction)Build a new function counter to be added to the registry.protected <T> FunctionTimernewFunctionTimer(Meter.Id id, T obj, java.util.function.ToLongFunction<T> countFunction, java.util.function.ToDoubleFunction<T> totalTimeFunction, java.util.concurrent.TimeUnit totalTimeFunctionUnit)Build a new function timer to be added to the registry.protected <T> GaugenewGauge(Meter.Id id, T obj, java.util.function.ToDoubleFunction<T> valueFunction)Build a new gauge to be added to the registry.protected LongTaskTimernewLongTaskTimer(Meter.Id id)Build a new long task timer to be added to the registry.protected MeternewMeter(Meter.Id id, Meter.Type type, java.lang.Iterable<Measurement> measurements)Build a new custom meter to be added to the registry.protected TimernewTimer(Meter.Id id, DistributionStatisticConfig distributionStatisticConfig, PauseDetector pauseDetector)Build a new timer to be added to the registry.-
Methods inherited from class io.micrometer.core.instrument.push.PushMeterRegistry
close, publish, start, start, stop
-
Methods inherited from class io.micrometer.core.instrument.MeterRegistry
clear, config, counter, counter, find, forEachMeter, gauge, gauge, gauge, gauge, gaugeCollectionSize, gaugeMapSize, get, getBaseTimeUnit, getConventionName, getConventionTags, getMeters, isClosed, more, newTimeGauge, remove, remove, removeByPreFilterId, summary, summary, timer, timer
-
-
-
-
Constructor Detail
-
StepMeterRegistry
public StepMeterRegistry(StepRegistryConfig config, Clock clock)
-
-
Method Detail
-
newGauge
protected <T> Gauge newGauge(Meter.Id id, @Nullable T obj, java.util.function.ToDoubleFunction<T> valueFunction)
Description copied from class:MeterRegistryBuild a new gauge to be added to the registry. This is guaranteed to only be called if the gauge doesn't already exist.- Specified by:
newGaugein classMeterRegistry- Type Parameters:
T- The type of the state object from which the gauge value is extracted.- Parameters:
id- The id that uniquely identifies the gauge.obj- State object used to compute a value.valueFunction- Function that is applied on the value for the number.- Returns:
- A new gauge.
-
newCounter
protected Counter newCounter(Meter.Id id)
Description copied from class:MeterRegistryBuild a new counter to be added to the registry. This is guaranteed to only be called if the counter doesn't already exist.- Specified by:
newCounterin classMeterRegistry- Parameters:
id- The id that uniquely identifies the counter.- Returns:
- A new counter.
-
newLongTaskTimer
protected LongTaskTimer newLongTaskTimer(Meter.Id id)
Description copied from class:MeterRegistryBuild a new long task timer to be added to the registry. This is guaranteed to only be called if the long task timer doesn't already exist.- Specified by:
newLongTaskTimerin classMeterRegistry- Parameters:
id- The id that uniquely identifies the long task timer.- Returns:
- A new long task timer.
-
newTimer
protected Timer newTimer(Meter.Id id, DistributionStatisticConfig distributionStatisticConfig, PauseDetector pauseDetector)
Description copied from class:MeterRegistryBuild a new timer to be added to the registry. This is guaranteed to only be called if the timer doesn't already exist.- Specified by:
newTimerin classMeterRegistry- Parameters:
id- The id that uniquely identifies the timer.distributionStatisticConfig- Configuration for published distribution statistics.pauseDetector- The pause detector to use for coordinated omission compensation.- Returns:
- A new timer.
-
newDistributionSummary
protected DistributionSummary newDistributionSummary(Meter.Id id, DistributionStatisticConfig distributionStatisticConfig, double scale)
Description copied from class:MeterRegistryBuild a new distribution summary to be added to the registry. This is guaranteed to only be called if the distribution summary doesn't already exist.- Specified by:
newDistributionSummaryin classMeterRegistry- Parameters:
id- The id that uniquely identifies the distribution summary.distributionStatisticConfig- Configuration for published distribution statistics.scale- Multiply every recorded sample by this factor.- Returns:
- A new distribution summary.
-
newFunctionTimer
protected <T> FunctionTimer newFunctionTimer(Meter.Id id, T obj, java.util.function.ToLongFunction<T> countFunction, java.util.function.ToDoubleFunction<T> totalTimeFunction, java.util.concurrent.TimeUnit totalTimeFunctionUnit)
Description copied from class:MeterRegistryBuild a new function timer to be added to the registry. This is guaranteed to only be called if the function timer doesn't already exist.- Specified by:
newFunctionTimerin classMeterRegistry- Type Parameters:
T- The type of the object upon which the value functions derives their measurements.- Parameters:
id- The id that uniquely identifies the function timer.obj- The state object from which the count and total functions derive measurements.countFunction- A monotonically increasing count function.totalTimeFunction- A monotonically increasing total time function.totalTimeFunctionUnit- The base unit of time of the totals returned by the total time function.- Returns:
- A new function timer.
-
newFunctionCounter
protected <T> FunctionCounter newFunctionCounter(Meter.Id id, T obj, java.util.function.ToDoubleFunction<T> countFunction)
Description copied from class:MeterRegistryBuild a new function counter to be added to the registry. This is guaranteed to only be called if the function counter doesn't already exist.- Specified by:
newFunctionCounterin classMeterRegistry- Type Parameters:
T- The type of the object upon which the value function derives a measurement.- Parameters:
id- The id that uniquely identifies the function counter.obj- The state object from which the count function derives a measurement.countFunction- A monotonically increasing count function.- Returns:
- A new function counter.
-
newMeter
protected Meter newMeter(Meter.Id id, Meter.Type type, java.lang.Iterable<Measurement> measurements)
Description copied from class:MeterRegistryBuild a new custom meter to be added to the registry. This is guaranteed to only be called if the custom meter doesn't already exist.- Specified by:
newMeterin classMeterRegistry- Parameters:
id- The id that uniquely identifies the custom meter.type- What kind of meter this is.measurements- A set of measurements describing how to sample this meter.- Returns:
- A new custom meter.
-
defaultHistogramConfig
protected DistributionStatisticConfig defaultHistogramConfig()
Description copied from class:MeterRegistryEvery custom registry implementation should define a default histogram expiry at a minimum:DistributionStatisticConfig.builder() .expiry(defaultStep) .build() .merge(DistributionStatisticConfig.DEFAULT);- Specified by:
defaultHistogramConfigin classMeterRegistry- Returns:
- The default distribution statistics config.
-
-