This holiday I’ve released two new projects at my github repository: PyMetrics and TxMetrics. There are metrics libraries inspired by Coda Hale’s Metric project [http://metrics.codahale.com/]. Although not that complete, I’ve ported what I feel that I was repeating myself in my projects and what I lacked to python and the twisted framework.
Some months ago, I’ve ported a descriptive stats library to python and also integrated it into PyMetrics and TxMetrics. These libraries are backed by redis and I intend to release a port to ruby using the same underlying data structures.
Most of the applications have at least one form of counter spread around it. My intention was to use the same semantic for these situations and also introduce new ways to measure data that is not bound to standard monitoring software extracting data from TCP ports or log files.
The difference between them is that I’ve had to port the tradicional python approach to twisted using the deferred constructs and another library that I contribute to, txredisapi.
With these libraries you can extract data realtime from your application and go from monitoring to dashboards, which is the next step I’m planning with the ruby client: to integrate with Dashing