Package io.opentelemetry.api.metrics
Interface LongUpDownCounter
-
- All Superinterfaces:
Instrument,SynchronousInstrument<LongUpDownCounter.BoundLongUpDownCounter>
@ThreadSafe public interface LongUpDownCounter extends SynchronousInstrument<LongUpDownCounter.BoundLongUpDownCounter>
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 LongUpDownCounter upDownCounter = meter. .longUpDownCounterBuilder("active_tasks") .setDescription("Number of active tasks") .setUnit("1") .build(); // It is recommended that the API user keep a reference to a Bound Counter. private static final BoundLongUpDownCounter someWorkBound = upDownCounter.bind("work_name", "some_work"); void doSomeWork() { someWorkBound.add(1); // Your code here. someWorkBound.add(-1); } }
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interfaceLongUpDownCounter.BoundLongUpDownCounterABound Instrumentfor aLongUpDownCounter.static interfaceLongUpDownCounter.BuilderBuilder class forLongUpDownCounter.-
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(long increment)Adds the givenincrementto the current value.voidadd(long increment, Labels labels)Adds the givenincrementto the current value.LongUpDownCounter.BoundLongUpDownCounterbind(Labels labels)Returns aBound Instrumentassociated with the specified labels.
-
-
-
Method Detail
-
add
void add(long 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 set of labels to be associated to this recording.
-
add
void add(long 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
LongUpDownCounter.BoundLongUpDownCounter 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<LongUpDownCounter.BoundLongUpDownCounter>- Parameters:
labels- the set of labels, as key-value pairs.- Returns:
- a
Bound Instrument
-
-