public interface Gauge extends Meter
Modifier and Type | Interface and Description |
---|---|
static class |
Gauge.Builder<T>
Fluent builder for gauges.
|
Meter.Id, Meter.Type
Modifier and Type | Method and Description |
---|---|
static Gauge.Builder<java.util.function.Supplier<java.lang.Number>> |
builder(java.lang.String name,
java.util.function.Supplier<java.lang.Number> f)
A convenience method for building a gauge from a supplying function, holding a strong
reference to this function.
|
static <T> Gauge.Builder<T> |
builder(java.lang.String name,
T obj,
java.util.function.ToDoubleFunction<T> f) |
default java.lang.Iterable<Measurement> |
measure()
Get a set of measurements.
|
double |
value()
The act of observing the value by calling this method triggers sampling
of the underlying number or user-defined function that defines the value for the gauge.
|
static <T> Gauge.Builder<T> builder(java.lang.String name, @Nullable T obj, java.util.function.ToDoubleFunction<T> f)
T
- The type of object to gauge.name
- The gauge's name.obj
- An object with some state or function which the gauge's instantaneous value
is determined from.f
- A function that yields a double value for the gauge, based on the state of
obj
.static Gauge.Builder<java.util.function.Supplier<java.lang.Number>> builder(java.lang.String name, java.util.function.Supplier<java.lang.Number> f)
name
- The gauge's name.f
- A function that yields a double value for the gauge.double value()
default java.lang.Iterable<Measurement> measure()
Meter