/Diamond

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.

Primary LanguagePythonMIT LicenseMIT

Build Status About

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

Getting Started

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".

Success Stories

  • Diamond has successfully been deployed to a cluster of 1000 machines pushing 3 million points per minute.
  • Have a story? Please share!

Repos

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.

Diamond Related Projects

Contact