python-diamond/Diamond — pull request #21 by kevinrobinson (2014-11-19 22:36:17+00:00)
Title: Adding CassandraJolokiaCollector for collecting latency percentile stats

This adds a new hook to the `JolokiaCollector` for interpreting values that are lists, and a `CassandraJolokiaCollector` that takes advantage of the hook to collect percentiles of latency metrics that Cassandra is writing to JMX. It's not clear how to collect beans with list of values, so the hook lets others subclass and interpret as needed, as is done here.

The format that Cassandra writes these in JMX is counts within different bucket sizes (http://www.datastax.com/documentation/cassandra/2.0/cassandra/tools/toolsCFhisto.html), and this is the basis for how this PR translates them to percentiles (org.apache.cassandra.utils.EstimatedHistogram.percentile inhttp://docs.webingenia.com/cassandra/doxygen/classorg_1_1apache_1_1cassandra_1_1utils_1_1EstimatedHistogram.html).

@kormoc Let me know if you have any other questions or feedback on how to make this better!