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.

Similar Software

netdata netdata is a web-based, real-time performance monitoring system which visualizes the system resource usage of a local Linux server (which netdata is running on) via time-series statistics. Monitored s...

Grafana Grafana is an open-source web application specializing in real-time time-series graph visualization. Written in JavaScript and Go, Grafana features a web-based dashboard which is composed of pluggabl...