You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
According to the specification, only Counter, Gauge, and UpDownCounter can be built with a callback.
Note:Gauge can be built exclusively with a callback.
An observable metric is an interesting OpenTelemetry concept that provides a handy way to collect metrics via a callback.
The callback is invoked when the collector requests the data. This is useful when you cannot instrument the object but can still collect metrics via getter methods.
Questions: 1) How do we call these instruments in the project? The specification uses asynchronous while Java's OpenTelemetry implementation uses observable.
It is highly recommended that implementations use the name ObservableCounter (or any language idiomatic variation, e.g. observable_counter) unless there is a strong reason not to do so.
I don't love that they introduced a second name, but I don't see any reason to diverge.
iRevive
changed the title
Observable (async) metric instruments
Observable metric instruments
Mar 29, 2023
OpenTelemetry specification
According to the specification, only
Counter
,Gauge
, andUpDownCounter
can be built with a callback.Note:
Gauge
can be built exclusively with a callback.An observable metric is an interesting OpenTelemetry concept that provides a handy way to collect metrics via a callback.
The callback is invoked when the collector requests the data. This is useful when you cannot instrument the object but can still collect metrics via getter methods.
Here are a few examples:
For example, we can collect CE starvation metrics:
We can implement this in the following way:
1) Add new
observableCounter
,observableUpDown
methods toMeter
trait2) Update
ObservableInstrumentBuilder
Questions:1) How do we call these instruments in the project? The specification uses asynchronous while Java's OpenTelemetry implementation uses observable.[typo edits by @rossabaker]
The text was updated successfully, but these errors were encountered: