Package io.opentelemetry.api.metrics
Interface DoubleSumObserver
-
- All Superinterfaces:
AsynchronousInstrument
,Instrument
@ThreadSafe public interface DoubleSumObserver extends AsynchronousInstrument
SumObserver
is the asynchronous instrument corresponding to Counter, used to capture a monotonic sum with Observe(sum)."Sum" appears in the name to remind that it is used to capture sums directly. Use a SumObserver to capture any value that starts at zero and rises throughout the process lifetime and never falls.
A
SumObserver
is a good choice in situations where a measurement is expensive to compute, such that it would be wasteful to compute on every request.Example:
// class YourClass { // // private static final Meter meter = OpenTelemetry.getMeterProvider().get("my_library_name"); // private static final DoubleSumObserver cpuObserver = // meter. // .doubleSumObserverBuilder("cpu_time") // .setDescription("System CPU usage") // .setUnit("ms") // .build(); // // void init() { // cpuObserver.setUpdater( // new DoubleSumObserver.Callback<DoubleResult>() { // @Override // public void update(DoubleResult result) { // // Get system cpu usage // result.observe(cpuIdle, "state", "idle"); // result.observe(cpuUser, "state", "user"); // } // }); // } // }
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface io.opentelemetry.api.metrics.AsynchronousInstrument
AsynchronousInstrument.DoubleResult, AsynchronousInstrument.LongResult
-
-