Github user zentol commented on the issue:
https://github.com/apache/flink/pull/5501
Yeah I'm not happy that we now added another instanceof clause.
Ultimately we could modify `Counter` and `Meter` to implement `NumberGauge`
(returning the count and rate, respectively), but that still leaves us with 3
metric types (StringGauge, NumberGauge, Histogram).
(Long-term i would still like to throw out StringGauges, or force reporters
to implement a dedicated interface)
We could also hide histograms behind a series of `NumberGauges`, but it is
difficult to ensure that all gauges refer to the same `HistogramStatistics`,
i.e. are consistent as a whole, as they do currently.
I didn't do anything in that regard in this PR as it would change behavior
of some reporters that try to map our types to whatever types the backend uses.
But this is very problematic anyway as our metric types are mostly syntactic
sugar; the choice between counter/gauge is rather arbitrary.
---