Tools That Work With Graphite

Posted at






Backstop



Backstop is a simple endpoint for submitting metrics to Graphite. It accepts JSON data via HTTP POST and proxies the data to one or more Carbon/Graphite listeners.



Bucky



Bucky is a small service implemented in Python for collecting and translating metrics for Graphite. It can current collect metric data from CollectD daemons and from StatsD clients.




collectd



collectd is a daemon which collects system performance statistics periodically and provides mechanisms to store the values in a variety of ways, including RRD. To send collectd metrics into carbon/graphite, use collectd's write-graphite plugin (available as of 5.1). Other options include:

Graphite can also read directly from collectd's RRD files. RRD files can simply be added to STORAGE_DIR/rrd (as long as directory names and files do not contain any . characters). For example, collectd's host.name/load/load.rrd can be symlinked to rrd/collectd/host_name/load/load.rrd to graph collectd.host_name.load.load.{short,mid,long}term.




Collectl



Collectl is a collection tool for system metrics that can be run both interactively and as a daemon and has support for collecting from a broad set of subsystems. Collectl includes a Graphite interface which allows data to easily be fed to Graphite for storage.




Charcoal



Charcoal is a simple Sinatra dashboarding frontend for Graphite or any other system status service which can generate images directly from a URL. Charcoal configuration is driven by a YAML config file.




Cubism.js



Cubism.js is a D3 plugin for visualizing time series data in real time, and can pull data from Graphite.




Descartes



Descartes is a Sinatra-based dashboard that allows users to correlate multiple metrics in a single chart, review long-term trends across one or more charts, and to collaborate with other users through a combination of shared dashboards and rich layouts.




Diamond



Diamond is a Python daemon that collects system metrics and publishes them to Graphite. 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.




Dusk



Dusk is a simple dashboard for isolating "hotspots" across a fleet of systems. It incorporates horizon charts using Cubism.js to maximize data visualization in a constrained space.




Evenflow



Evenflow is a simple service for submitting sFlow datagrams to Graphite. It accepts sFlow datagrams from multiple network devices and proxies the data to a Carbon listener. Currently only Generic Interface Counters are supported. All other message types are discarded.




Ganglia



Ganglia is a scalable distributed monitoring system for high-performance computing systems such as clusters and Grids. It collects system performance metrics and stores them in RRD, but now there is an add-on that allows Ganglia to send metrics directly to Graphite. Further integration work is underway.




GDash



Gdash is a simple Graphite dashboard built using Twitters Bootstrap driven by a small DSL.




Giraffe



Giraffe is a Graphite real-time dashboard based on Rickshaw and requires no server backend. Inspired by Gdash, Tasseo and Graphene it mixes features from all three into a slightly different animal.




Graphitus



graphitus is a client side dashboard for graphite built using bootstrap and underscore.js.




Graph-Explorer



Graph-Explorer is a graphite dashboard which uses plugins to add tags and metadata to metrics and a query language with lets you filter through them and compose/manipulate graphs on the fly. Also aims for high interactivity using TimeseriesWidget and minimal hassle to set up and get running.




Graph-Index



Graph-Index is index of graphs for Diamond




Graphene



Graphene is a Graphite dashboard toolkit based on D3.js and Backbone.js which was made to offer a very aesthetic realtime dashboard. Graphene provides a solution capable of displaying thousands upon thousands of datapoints all updated in realtime.




Graphite-Newrelic



Graphite-Newrelic - Get your graphite data into New Relic via a New Relic Platform plugin.




Graphite-Observer



Graphite-Observer is a real-time monitor dashboard for Graphite.




Graphite-relay



Graphite-relay is a fast Graphite relay written in Scala with the Netty framework.




Graphite-Tattle



Graphite-Tattle is a self-service dashboard frontend for Graphite and Ganglia.




Graphiti



Graphiti is a powerful dashboard front end with a focus on ease of access, ease of recovery and ease of tweaking and manipulation.




Graphitoid



Graphitoid is an Android app which allows one to browse and display Graphite graphs on an Android device.




Graphios



Graphios is a small Python daemon to send Nagios performance data (perfdata) to Graphite.




Graphitejs



Graphitejs is a jQuery plugin for easily making and displaying graphs and updating them on the fly using the Graphite URL api.




Graphsky



Graphsky is flexible and easy to configure PHP based dashboard. It uses JSON template files to build graphs and specify which graphs need to be displayed when, similar to Ganglia-web. Just like Ganglia, it uses a hierarchial structure: Environment/Cluster/Host/Metric to be able to display overview graphs and host-specific metrics. It communicates directly to the Graphite API to determine which Environments, Clusters, Hosts and Metrics are currently stored in Graphite.




Grockets



Grockets is a node.js application which provides streaming JSON data over HTTP from Graphite.




HoardD



HoardD is a Node.js app written in CoffeeScript to send data from servers to Graphite, much like collectd does, but aimed at being easier to expand and with less footprint. It comes by default with basic collectors plus Redis and MySQL metrics, and can be expanded with Javascript or CoffeeScript.




Host sFlow



Host sFlow is an open source implementation of the sFlow protocol (http://www.sflow.org), exporting a standard set of host cpu, memory, disk and network I/O metrics. The sflow2graphite utility converts sFlow to Graphite's plaintext protocol, allowing Graphite to receive sFlow metrics.




hubot-scripts



Hubot is a Campfire bot written in Node.js and CoffeeScript. The related hubot-scripts project includes a Graphite script which supports searching and displaying saved graphs from the Composer directory in your Campfire rooms.




jmxtrans



jmxtrans is a powerful tool that performs JMX queries to collect metrics from Java applications. It is requires very little configuration and is capable of sending metric data to several backend applications, including Graphite.




Ledbetter



Ledbetter is a simple script for gathering Nagios problem statistics and submitting them to Graphite. It focuses on summary (overall, servicegroup and hostgroup) statistics and writes them to the nagios.problems metrics namespace within Graphite.




Logster



Logster is a utility for reading log files and generating metrics in Graphite or Ganglia. It is ideal for visualizing trends of events that are occurring in your application/system/error logs. For example, you might use logster to graph the number of occurrences of HTTP response code that appears in your web server logs.




Orion



Orion is powerful tool to create, view and manage dashboards for your Graphite data. It allows easy implementation of custom authentication to manage access to the dashboard.



metrics-sampler



metrics-sampler is a java program which regularly queries metrics from a configured set of inputs, selects and renames them using regular expressions and sends them to a configured set of outputs. It supports JMX and JDBC as inputs and Graphite as output out of the box.



Pencil



Pencil is a monitoring frontend for graphite. It runs a webserver that dishes out pretty Graphite URLs in interesting and intuitive layouts.



pipe-to-graphite



pipe-to-graphite is a small shell script that makes it easy to report the output of any other cli program to Graphite.



Rocksteady



Rocksteady is a system that ties together Graphite, RabbitMQ, and Esper. Developed by AdMob (who was then bought by Google), this was released by Google as open source (http://google-opensource.blogspot.com/2010/09/get-ready-to-rocksteady.html).



Scales



Scales is a Python server state and statistics library that can output its data to Graphite.



Sensu



Sensu is a monitoring framework that can route metrics to Graphite. Servers subscribe to sets of checks, so getting metrics from a new server to Graphite is as simple as installing the Sensu client and subscribing.



Seyren



Seyren is an alerting dashboard for Graphite.



Shinken



Shinken is a system monitoring solution compatible with Nagios which emphasizes scalability, flexibility, and ease of setup. Shinken provides complete integration with Graphite for processing and display of performance data.



SqlToGraphite



SqlToGraphite is an agent for windows written in .net to collect metrics using plugins (WMI, SQL Server, Oracle) by polling an endpoint with a SQL query and pushing the results into graphite. It uses either a local or a centralised configuration over HTTP.



statsd



statsd is a simple daemon for easy stats aggregation, developed by the folks at Etsy. A list of forks and alternative implementations can be found at <http://joemiller.me/2011/09/21/list-of-statsd-server-implementations/>



Structured Metrics



structured_metrics is a lightweight python library that uses plugins to read in Graphite's list of metric names and convert it into a multi-dimensional tag space of clear, sanitized targets.



Tasseo



Tasseo is a lightweight, easily configurable, real-time dashboard for Graphite metrics.



Therry



Therry ia s simple web service that caches Graphite metrics and exposes an endpoint for dumping or searching against them by substring.




TimeseriesWidget



TimeseriesWidget adds timeseries graphs to your webpages/dashboards using a simple api, focuses on high interactivity and modern features (realtime zooming, datapoint inspection, annotated events, etc). Supports Graphite, flot, rickshaw and anthracite.




team_dashboard



team_dashboard Team Dashboard lets you visualize your team's metrics all in one place. It is build to be shown on a big screen in your team's space.. demo.