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);
       }
     }
     
    • Method Detail

      • add

        void add​(double increment,
                 Labels labels)
        Adds the given increment to the current value.

        The value added is associated with the current Context and 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 given increment to the current value.

        The value added is associated with the current Context and empty labels.

        Parameters:
        increment - the value to add.