public interface Meter
Modifier and Type | Interface and Description |
---|---|
static class |
Meter.Builder
Fluent builder for custom meters.
|
static class |
Meter.Id
A meter is uniquely identified by its combination of name and tags.
|
static class |
Meter.Type
Custom meters may emit metrics like one of these types without implementing
the corresponding interface.
|
Modifier and Type | Method and Description |
---|---|
static Meter.Builder |
builder(String name,
Meter.Type type,
Iterable<Measurement> measurements) |
default void |
close() |
Meter.Id |
getId() |
default <T> T |
match(Function<Gauge,T> visitGauge,
Function<Counter,T> visitCounter,
Function<Timer,T> visitTimer,
Function<DistributionSummary,T> visitSummary,
Function<LongTaskTimer,T> visitLongTaskTimer,
Function<TimeGauge,T> visitTimeGauge,
Function<FunctionCounter,T> visitFunctionCounter,
Function<FunctionTimer,T> visitFunctionTimer,
Function<Meter,T> visitMeter)
|
Iterable<Measurement> |
measure()
Get a set of measurements.
|
default void |
use(Consumer<Gauge> visitGauge,
Consumer<Counter> visitCounter,
Consumer<Timer> visitTimer,
Consumer<DistributionSummary> visitSummary,
Consumer<LongTaskTimer> visitLongTaskTimer,
Consumer<TimeGauge> visitTimeGauge,
Consumer<FunctionCounter> visitFunctionCounter,
Consumer<FunctionTimer> visitFunctionTimer,
Consumer<Meter> visitMeter)
|
static Meter.Builder builder(String name, Meter.Type type, Iterable<Measurement> measurements)
Meter.Id getId()
Iterable<Measurement> measure()
default <T> T match(Function<Gauge,T> visitGauge, Function<Counter,T> visitCounter, Function<Timer,T> visitTimer, Function<DistributionSummary,T> visitSummary, Function<LongTaskTimer,T> visitLongTaskTimer, Function<TimeGauge,T> visitTimeGauge, Function<FunctionCounter,T> visitFunctionCounter, Function<FunctionTimer,T> visitFunctionTimer, Function<Meter,T> visitMeter)
Meter
by type with series of dedicated functions for specific Meter
s and
return a result from the matched function.
NOTE: This method contract will change in minor releases if ever a new Meter
type is created.
In this case only, this is considered a feature. By using this method, you are declaring that
you want to be sure to handle all types of meters. A breaking API change during the introduction of
a new Meter
indicates that there is a new meter type for you to consider and the compiler will
effectively require you to consider it.
T
- return type of function to applyvisitGauge
- function to apply for Gauge
visitCounter
- function to apply for Counter
visitTimer
- function to apply for Timer
visitSummary
- function to apply for DistributionSummary
visitLongTaskTimer
- function to apply for LongTaskTimer
visitTimeGauge
- function to apply for TimeGauge
visitFunctionCounter
- function to apply for FunctionCounter
visitFunctionTimer
- function to apply for FunctionTimer
visitMeter
- function to apply as a fallbackdefault void use(Consumer<Gauge> visitGauge, Consumer<Counter> visitCounter, Consumer<Timer> visitTimer, Consumer<DistributionSummary> visitSummary, Consumer<LongTaskTimer> visitLongTaskTimer, Consumer<TimeGauge> visitTimeGauge, Consumer<FunctionCounter> visitFunctionCounter, Consumer<FunctionTimer> visitFunctionTimer, Consumer<Meter> visitMeter)
Meter
with a series of dedicated functions for specific Meter
s and call the matching
consumer.
NOTE: This method contract will change in minor releases if ever a new Meter
type is created.
In this case only, this is considered a feature. By using this method, you are declaring that
you want to be sure to handle all types of meters. A breaking API change during the introduction of
a new Meter
indicates that there is a new meter type for you to consider and the compiler will
effectively require you to consider it.
visitGauge
- function to apply for Gauge
visitCounter
- function to apply for Counter
visitTimer
- function to apply for Timer
visitSummary
- function to apply for DistributionSummary
visitLongTaskTimer
- function to apply for LongTaskTimer
visitTimeGauge
- function to apply for TimeGauge
visitFunctionCounter
- function to apply for FunctionCounter
visitFunctionTimer
- function to apply for FunctionTimer
visitMeter
- function to apply as a fallbackdefault void close()
Copyright © 2019. All rights reserved.