Diamond is a python daemon that collects system metrics and publishes them to Graphite (and others). It is capable of collecting cpu, memory, network, i/o, load and disk metrics. Additionally, it features an API for implementing custom collectors for gathering metrics from almost any source.
I've searched in various places and looked at the commit logs and can't find any satisfactory answer to this question: why does Diamond constrain Metric.value to an int||float? What's the reason behind this? Is it simply due to historical reasons, i.e. Diamond was originally developed alongside Graphite? Is it possible to extend the allowed types to include 'string' as well? (I do understand that string type isn't suitable for apps backed by time-series databases).
Hello,
I've searched in various places and looked at the commit logs and can't find any satisfactory answer to this question: why does Diamond constrain Metric.value to an int||float? What's the reason behind this? Is it simply due to historical reasons, i.e. Diamond was originally developed alongside Graphite? Is it possible to extend the allowed types to include 'string' as well? (I do understand that string type isn't suitable for apps backed by time-series databases).
Thanks, David