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.
The documentation can be found on our wiki. For your convenience the wiki is setup as a submodule of this checkout. You can get it via running
git submodule init
git submodule update
Steps to getting started:
- Read the documentation on the Wiki
- Install via "pip diamond". The releases on github are not recommended for use. Use "pypi-install diamond" on Debian/Ubuntu systems with python-stdeb installed to build packages.
- Copy the "diamond.conf.example" file to "diamond.conf".
- Optional: Run "diamond-setup" to help set collectors in "diamond.conf".
- Modify "diamond.conf" for your needs.
- Run diamond with one of: "diamond" or "initctl start diamond" or "/etc/init.d/diamond restart".
- Diamond has successfully been deployed to a cluster of 1000 machines pushing 3 million points per minute.
- Have a story? Please share!
Historically Diamond was a brightcove project and hosted at BrightcoveOS. However none of the active developers are brightcove employees and so the development has moved to python-diamond. We request that any new pull requests and issues be cut against python-diamond. We will keep BrightcoveOS updated and still honor issues/tickets cut on that repo.
- IRC #python-diamond on freenode. Webchat
- Mailing List diamond@librelist.com - Email the list and you will automatically subscribe. Archive