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 classHistogram.Child.Value
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Histogram.Child.Valueget()Get the value of the Histogram.voidobserve(double amt)Observe the given amount.voidobserveWithExemplar(double amt, String... exemplarLabels)Likeobserve(double), but additionally creates an exemplar.voidobserveWithExemplar(double amt, Map<String,String> exemplarLabels)LikeobserveWithExemplar(double, String...), but the exemplar labels are passed as aMap.Histogram.TimerstartTimer()Start a timer to track a duration.doubletime(Runnable timeable)Executes runnable code (e.g.<E> Etime(Callable<E> timeable)Executes callable code (e.g.doubletimeWithExemplar(Runnable timeable, String... exemplarLabels)Liketime(Runnable), but additionally create an exemplar.doubletimeWithExemplar(Runnable timeable, Map<String,String> exemplarLabels)Liketime(Runnable), but additionally create an exemplar.<E> EtimeWithExemplar(Callable<E> timeable, String... exemplarLabels)Liketime(Callable), but additionally create an exemplar.<E> EtimeWithExemplar(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 theexemplarLabelsparameter.
-
timeWithExemplar
public double timeWithExemplar(Runnable timeable, Map<String,String> exemplarLabels)
Liketime(Runnable), but additionally create an exemplar.See
observeWithExemplar(double, Map)for documentation on theexemplarLabelsparameter.
-
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 theexemplarLabelsparameter.
-
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 theexemplarLabelsparameter.
-
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
HistogramExemplarSamplerconfigured inExemplarConfig.The exemplar will have
amtas 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.Valueis subject to change.
-
-