-
Notifications
You must be signed in to change notification settings - Fork 598
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
runtime instrument type #368
Comments
We need to do something in the specification about this. Since Prometheus does not support I will file a corresponding issue in the main repository. |
Thanks @seankhliao. It looks fairly straightforward to fix this support in the Prometheus exporter. |
thanks for looking into this |
It seems like open-telemetry/opentelemetry-go#1210 resolved this. Closing. |
My setup was a fairly simple one, expecting more or less the equivalent metrics from prometheus
http.Handle("/prommetrics", promhttp.Handler())
for the go runtime.The metrics recorded by
runtime
are of typemetric.Int64UpDownSumObserver
, which is additive, resulting in numbers that are out of place (eg 200k goroutines, 60GiB of allocated memory on a machine with 2GiB, ...) and graphs that look likeWhereas I was expecting the (in my opinion more useful):
The information read from go's stdlib provides a snapshot of the current go runtime state, and I was expecting this to be reflected in the metrics; instead, with the current behaviour, it will monotonically increase and to get the stats from a point in time requires the use of
rate()
or similar, losing resolution. The use ofmetric.Int64UpDownSumObserver
indicates that the value is intended to go down at some point in time, but in current usage it never willThe text was updated successfully, but these errors were encountered: