Envoy /stats/prometheus?filter works only with statsd metrics
- Dominant language
- C++
- Stars
- 28.9k
- Forks
- 5.6k
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 437
Description
```
curl 'localhost:9901/stats/prometheus?filter=runtime.load_error'
# TYPE envoy_runtime_load_error counter
envoy_runtime_load_error{} 0
```
I was expecting `envoy_runtime_load_error` to be used when filtering metrics on the prometheus stats endpoint, but filtering on it returns nothing. Only statsd `runtime.load_error` works.
This forces a weird mapping on the monitoring side. We have to maintain a map of statsd:prometheus metric names or re-implement the reverse transformation on the monitoring side.
I'm willing to work on this if it's considered a bug and not expected behaviour. What I think is happening is that the filtering is done before the statsd->prometheus metric transformation -- and should be moved after.
Contributor guide
Assessment
This issue has not been assessed yet.