public abstract class StepMeterRegistry extends MeterRegistry
MeterRegistry.Config, MeterRegistry.More
clock
Constructor and Description |
---|
StepMeterRegistry(StepRegistryConfig config,
Clock clock) |
Modifier and Type | Method and Description |
---|---|
void |
close()
Closes this registry, releasing any resources in the process.
|
protected DistributionStatisticConfig |
defaultHistogramConfig()
Every custom registry implementation should define a default histogram expiry at a minimum:
|
protected Counter |
newCounter(Meter.Id id)
Build a new counter to be added to the registry.
|
protected DistributionSummary |
newDistributionSummary(Meter.Id id,
DistributionStatisticConfig distributionStatisticConfig,
double scale)
Build a new distribution summary to be added to the registry.
|
protected <T> FunctionCounter |
newFunctionCounter(Meter.Id id,
T obj,
java.util.function.ToDoubleFunction<T> countFunction)
Build a new function counter to be added to the registry.
|
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 totalTimeFunctionUnits)
Build a new function timer to be added to the registry.
|
protected <T> Gauge |
newGauge(Meter.Id id,
T obj,
java.util.function.ToDoubleFunction<T> valueFunction)
Build a new gauge to be added to the registry.
|
protected LongTaskTimer |
newLongTaskTimer(Meter.Id id)
Build a new long task timer to be added to the registry.
|
protected Meter |
newMeter(Meter.Id id,
Meter.Type type,
java.lang.Iterable<Measurement> measurements)
Build a new custom meter to be added to the registry.
|
protected Timer |
newTimer(Meter.Id id,
DistributionStatisticConfig distributionStatisticConfig,
PauseDetector pauseDetector)
Build a new timer to be added to the registry.
|
protected abstract void |
publish() |
void |
start() |
void |
start(java.util.concurrent.ThreadFactory threadFactory) |
void |
stop() |
config, counter, counter, find, forEachMeter, gauge, gauge, gauge, gauge, gaugeCollectionSize, gaugeMapSize, get, getBaseTimeUnit, getConventionName, getConventionTags, getMeters, isClosed, more, newTimeGauge, summary, summary, timer, timer
public StepMeterRegistry(StepRegistryConfig config, Clock clock)
public void start()
public void start(java.util.concurrent.ThreadFactory threadFactory)
public void stop()
public void close()
MeterRegistry
close
in interface java.lang.AutoCloseable
close
in class MeterRegistry
protected abstract void publish()
protected <T> Gauge newGauge(Meter.Id id, @Nullable T obj, java.util.function.ToDoubleFunction<T> valueFunction)
MeterRegistry
newGauge
in class MeterRegistry
T
- The type of the state object from which the gauge value is extracted.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.protected Counter newCounter(Meter.Id id)
MeterRegistry
newCounter
in class MeterRegistry
id
- The id that uniquely identifies the counter.protected LongTaskTimer newLongTaskTimer(Meter.Id id)
MeterRegistry
newLongTaskTimer
in class MeterRegistry
id
- The id that uniquely identifies the long task timer.protected Timer newTimer(Meter.Id id, DistributionStatisticConfig distributionStatisticConfig, PauseDetector pauseDetector)
MeterRegistry
newTimer
in class MeterRegistry
id
- The id that uniquely identifies the timer.distributionStatisticConfig
- Configuration for published distribution statistics.pauseDetector
- The pause detector to use for coordinated omission compensation.protected DistributionSummary newDistributionSummary(Meter.Id id, DistributionStatisticConfig distributionStatisticConfig, double scale)
MeterRegistry
newDistributionSummary
in class MeterRegistry
id
- The id that uniquely identifies the distribution summary.distributionStatisticConfig
- Configuration for published distribution statistics.scale
- Multiply every recorded sample by this factor.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 totalTimeFunctionUnits)
MeterRegistry
newFunctionTimer
in class MeterRegistry
T
- The type of the object upon which the value functions derives their measurements.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.totalTimeFunctionUnits
- The base unit of time of the totals returned by the total time function.protected <T> FunctionCounter newFunctionCounter(Meter.Id id, T obj, java.util.function.ToDoubleFunction<T> countFunction)
MeterRegistry
newFunctionCounter
in class MeterRegistry
T
- The type of the object upon which the value function derives a measurement.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.protected Meter newMeter(Meter.Id id, Meter.Type type, java.lang.Iterable<Measurement> measurements)
MeterRegistry
newMeter
in class MeterRegistry
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.protected DistributionStatisticConfig defaultHistogramConfig()
MeterRegistry
DistributionStatisticConfig.builder() .expiry(defaultStep) .build() .merge(DistributionStatisticConfig.DEFAULT);
defaultHistogramConfig
in class MeterRegistry