Graphite is a scalable, real-time graph visualization tool written in Python, which stores time-series data and displays graph visualization based on them via web interfaces. Graphite leverages (1) the even-driven Twisted engine to receive time-series data from external data feeds over the network, (2) the Whisper database to store time-series data streams on disks, (3) the Cairo graphics library to render graphs, and (4) the Django web framework to power a web-based dashboard. Both the backend and frontend of Graphite are designed to scale horizontally and support clustered deployments; in the backend, more than one data receiver daemons can be set up across multiple servers, which are then front-ended by a “relay” process which load balances high-volume data feeds among them; in the front end, graph rendering interface can leverage distributed memcached for real-time graph visualization. The Whisper backend database can be configured to adjust time-series data retention period and precision. Graphite can be integrated with external data collectors such as collectd and Logster, or real-time dashboards such as Grafana or Giraffe.
Subscribe to Xmodulo List
Do you want to receive posts about Linux applications and software recommended by Xmodulo List? Enter your email address below, and we will deliver our recommendations straight to your email box, for free. Delivery powered by Google Feedburner.