thelastpickle/cassandra-reaper

Refactor the relationship between the MetricsProxy and the CassandraManagement classes

Opened this issue · 0 comments

Project board link

The addition of the management api as communication protocol between Reaper and Cassandra changed the relationship between the management interface and the metrics proxy one.
With JMX, both operations and metrics were pulled from the same place: JMX MBeans
Thus, pulling metrics was done in the JMXProxy, and the MetricsProxy was using it for that.
With the management api, we have two distinct endpoints for operations and metrics, and the relationship between the management proxy class and the metrics proxy class is turned the other way around: the management proxy now goes through the metrics proxy to pull the metrics, while with jmx it was the metrics proxy that was going through the management proxy to get the metrics.
We need to refactor the relationship between these two classes and possibly fully remove the concept of a Metrics proxy, merging it into the management proxy.