Class Histogram.Child
- java.lang.Object
-
- io.prometheus.client.Histogram.Child
-
- Enclosing class:
- Histogram
public static class Histogram.Child extends Object
The value of a single Histogram.Warning: References to a Child become invalid after using
SimpleCollector.remove(java.lang.String...)
orSimpleCollector.clear()
.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Histogram.Child.Value
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Histogram.Child.Value
get()
Get the value of the Histogram.void
observe(double amt)
Observe the given amount.void
observeWithExemplar(double amt, String... exemplarLabels)
Likeobserve(double)
, but additionally creates an exemplar.void
observeWithExemplar(double amt, Map<String,String> exemplarLabels)
LikeobserveWithExemplar(double, String...)
, but the exemplar labels are passed as aMap
.Histogram.Timer
startTimer()
Start a timer to track a duration.double
time(Runnable timeable)
Executes runnable code (e.g.<E> E
time(Callable<E> timeable)
Executes callable code (e.g.double
timeWithExemplar(Runnable timeable, String... exemplarLabels)
Liketime(Runnable)
, but additionally create an exemplar.double
timeWithExemplar(Runnable timeable, Map<String,String> exemplarLabels)
Liketime(Runnable)
, but additionally create an exemplar.<E> E
timeWithExemplar(Callable<E> timeable, String... exemplarLabels)
Liketime(Callable)
, but additionally create an exemplar.<E> E
timeWithExemplar(Callable<E> timeable, Map<String,String> exemplarLabels)
Liketime(Callable)
, but additionally create an exemplar.
-
-
-
Method Detail
-
time
public double time(Runnable timeable)
Executes runnable code (e.g. a Java 8 Lambda) and observes a duration of how long it took to run.- Parameters:
timeable
- Code that is being timed- Returns:
- Measured duration in seconds for timeable to complete.
-
timeWithExemplar
public double timeWithExemplar(Runnable timeable, String... exemplarLabels)
Liketime(Runnable)
, but additionally create an exemplar.See
observeWithExemplar(double, String...)
for documentation on theexemplarLabels
parameter.
-
timeWithExemplar
public double timeWithExemplar(Runnable timeable, Map<String,String> exemplarLabels)
Liketime(Runnable)
, but additionally create an exemplar.See
observeWithExemplar(double, Map)
for documentation on theexemplarLabels
parameter.
-
time
public <E> E time(Callable<E> timeable)
Executes callable code (e.g. a Java 8 Lambda) and observes a duration of how long it took to run.- Parameters:
timeable
- Code that is being timed- Returns:
- Result returned by callable.
-
timeWithExemplar
public <E> E timeWithExemplar(Callable<E> timeable, String... exemplarLabels)
Liketime(Callable)
, but additionally create an exemplar.See
observeWithExemplar(double, String...)
for documentation on theexemplarLabels
parameter.
-
timeWithExemplar
public <E> E timeWithExemplar(Callable<E> timeable, Map<String,String> exemplarLabels)
Liketime(Callable)
, but additionally create an exemplar.See
observeWithExemplar(double, Map)
for documentation on theexemplarLabels
parameter.
-
observe
public void observe(double amt)
Observe the given amount.- Parameters:
amt
- in most cases amt should be >= 0. Negative values are supported, but you should read https://prometheus.io/docs/practices/histograms/#count-and-sum-of-observations for implications and alternatives.
-
observeWithExemplar
public void observeWithExemplar(double amt, String... exemplarLabels)
Likeobserve(double)
, but additionally creates an exemplar.This exemplar takes precedence over any exemplar returned by the
HistogramExemplarSampler
configured inExemplarConfig
.The exemplar will have
amt
as the value,System.currentTimeMillis()
as the timestamp, and the specified labels.- Parameters:
amt
- same as inobserve(double)
(double)}exemplarLabels
- list of name/value pairs, as documented inExemplar(double, String...)
. A commonly used name is"trace_id"
. CallingobserveWithExemplar(amt)
means that an exemplar without labels is created. CallingobserveWithExemplar(amt, (String[]) null)
is equivalent to callingobserve(amt)
.
-
observeWithExemplar
public void observeWithExemplar(double amt, Map<String,String> exemplarLabels)
LikeobserveWithExemplar(double, String...)
, but the exemplar labels are passed as aMap
.
-
startTimer
public Histogram.Timer startTimer()
Start a timer to track a duration.Call
Histogram.Timer.observeDuration()
at the end of what you want to measure the duration of.
-
get
public Histogram.Child.Value get()
Get the value of the Histogram.Warning: The definition of
Histogram.Child.Value
is subject to change.
-
-