Package io.opentelemetry.api.metrics
Interface DoubleUpDownCounter
-
- All Superinterfaces:
Instrument,SynchronousInstrument<DoubleUpDownCounter.BoundDoubleUpDownCounter>
@ThreadSafe public interface DoubleUpDownCounter extends SynchronousInstrument<DoubleUpDownCounter.BoundDoubleUpDownCounter>
UpDownCounter is a synchronous instrument and very similar to Counter except that Add(increment) supports negative increments. This makes UpDownCounter not useful for computing a rate aggregation. The default aggregation is `Sum`, only the sum is non-monotonic. It is generally useful for capturing changes in an amount of resources used, or any quantity that rises and falls during a request.Example:
class YourClass { private static final Meter meter = OpenTelemetry.getMeterProvider().get("my_library_name"); private static final DoubleUpDownCounter upDownCounter = meter. .doubleUpDownCounterBuilder("resource_usage") .setDescription("Current resource usage") .setUnit("1") .build(); // It is recommended that the API user keep references to a Bound Counters. private static final BoundDoubleUpDownCounter someWorkBound = upDownCounter.bind("work_name", "some_work"); void doSomeWork() { someWorkBound.add(10.2); // Resources needed for this task. // Your code here. someWorkBound.add(-10.0); } }
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interfaceDoubleUpDownCounter.BoundDoubleUpDownCounterABound Instrumentfor aDoubleUpDownCounter.static interfaceDoubleUpDownCounter.BuilderBuilder class forDoubleUpDownCounter.-
Nested classes/interfaces inherited from interface io.opentelemetry.api.metrics.SynchronousInstrument
SynchronousInstrument.BoundInstrument
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidadd(double increment)Adds the givenincrementto the current value.voidadd(double increment, Labels labels)Adds the givenincrementto the current value.DoubleUpDownCounter.BoundDoubleUpDownCounterbind(Labels labels)Returns aBound Instrumentassociated with the specified labels.
-
-
-
Method Detail
-
add
void add(double increment, Labels labels)Adds the givenincrementto the current value.The value added is associated with the current
Contextand provided set of labels.- Parameters:
increment- the value to add.labels- the labels to be associated to this recording.
-
add
void add(double increment)
Adds the givenincrementto the current value.The value added is associated with the current
Contextand empty labels.- Parameters:
increment- the value to add.
-
bind
DoubleUpDownCounter.BoundDoubleUpDownCounter bind(Labels labels)
Description copied from interface:SynchronousInstrumentReturns aBound Instrumentassociated with the specified labels. Multiples requests with the same set of labels may return the sameBound Instrumentinstance.It is recommended that callers keep a reference to the Bound Instrument instead of always calling this method for every operation.
- Specified by:
bindin interfaceSynchronousInstrument<DoubleUpDownCounter.BoundDoubleUpDownCounter>- Parameters:
labels- the set of labels, as key-value pairs.- Returns:
- a
Bound Instrument
-
-