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.

Xmodulo © 2021 ‒ AboutWrite for UsFeed ‒ Powered by DigitalOcean