Class DefaultLongTaskTimer
java.lang.Object
io.micrometer.core.instrument.AbstractMeter
io.micrometer.core.instrument.internal.DefaultLongTaskTimer
- All Implemented Interfaces:
HistogramSupport
,LongTaskTimer
,Meter
- Direct Known Subclasses:
CumulativeHistogramLongTaskTimer
public class DefaultLongTaskTimer extends AbstractMeter implements LongTaskTimer
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.micrometer.core.instrument.LongTaskTimer
LongTaskTimer.Builder, LongTaskTimer.Sample
Nested classes/interfaces inherited from interface io.micrometer.core.instrument.Meter
Meter.Builder, Meter.Id, Meter.Type
-
Constructor Summary
Constructors Constructor Description DefaultLongTaskTimer(Meter.Id id, Clock clock)
Deprecated.DefaultLongTaskTimer(Meter.Id id, Clock clock, java.util.concurrent.TimeUnit baseTimeUnit, DistributionStatisticConfig distributionStatisticConfig, boolean supportsAggregablePercentiles)
Create aDefaultLongTaskTimer
instance. -
Method Summary
Modifier and Type Method Description int
activeTasks()
java.util.concurrent.TimeUnit
baseTimeUnit()
double
duration(java.util.concurrent.TimeUnit unit)
boolean
equals(java.lang.Object o)
protected void
forEachActive(java.util.function.Consumer<LongTaskTimer.Sample> sample)
int
hashCode()
double
max(java.util.concurrent.TimeUnit unit)
The amount of time the longest running task has been runningLongTaskTimer.Sample
start()
Start keeping time for a task.HistogramSnapshot
takeSnapshot()
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
getId
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.micrometer.core.instrument.distribution.HistogramSupport
takeSnapshot
Methods inherited from interface io.micrometer.core.instrument.LongTaskTimer
duration, mean, measure, record, record, record, recordCallable, stop
-
Constructor Details
-
DefaultLongTaskTimer
Deprecated.Create aDefaultLongTaskTimer
instance.- Parameters:
id
- IDclock
- clock
-
DefaultLongTaskTimer
public DefaultLongTaskTimer(Meter.Id id, Clock clock, java.util.concurrent.TimeUnit baseTimeUnit, DistributionStatisticConfig distributionStatisticConfig, boolean supportsAggregablePercentiles)Create aDefaultLongTaskTimer
instance.- Parameters:
id
- IDclock
- clockbaseTimeUnit
- base time unitdistributionStatisticConfig
- distribution statistic configurationsupportsAggregablePercentiles
- whether it supports aggregable percentiles- Since:
- 1.5.0
-
-
Method Details
-
start
Description copied from interface:LongTaskTimer
Start keeping time for a task.- Specified by:
start
in interfaceLongTaskTimer
- Returns:
- A task id that can be used to look up how long the task has been running.
-
duration
public double duration(java.util.concurrent.TimeUnit unit)- Specified by:
duration
in interfaceLongTaskTimer
- Parameters:
unit
- The time unit to scale the duration to.- Returns:
- The cumulative duration of all current tasks.
-
max
public double max(java.util.concurrent.TimeUnit unit)Description copied from interface:LongTaskTimer
The amount of time the longest running task has been running- Specified by:
max
in interfaceLongTaskTimer
- Parameters:
unit
- The time unit to scale the max to.- Returns:
- The maximum active task duration.
-
activeTasks
public int activeTasks()- Specified by:
activeTasks
in interfaceLongTaskTimer
- Returns:
- The current number of tasks being executed.
-
forEachActive
-
baseTimeUnit
public java.util.concurrent.TimeUnit baseTimeUnit()- Specified by:
baseTimeUnit
in interfaceLongTaskTimer
- Returns:
- The base time unit of the long task timer to which all published metrics will be scaled
-
equals
public boolean equals(java.lang.Object o)- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()- Overrides:
hashCode
in classjava.lang.Object
-
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.
-
DefaultLongTaskTimer(Meter.Id, Clock, TimeUnit, DistributionStatisticConfig, boolean)
instead.