Need advice about which tool to choose?Ask the StackShare community!
Cacti vs Graphite: What are the differences?
Developers describe Cacti as "Cacti stores all of the necessary information to create graphs and populate them with data in a MySQL database". Cacti is a complete network graphing solution designed to harness the power of RRDTool's data storage and graphing functionality. Cacti provides a fast poller, advanced graph templating, multiple data acquisition methods, and user management features out of the box. On the other hand, Graphite is detailed as "A highly scalable real-time graphing system". Graphite does two things: 1) Store numeric time-series data and 2) Render graphs of this data on demand.
Cacti and Graphite belong to "Monitoring Tools" category of the tech stack.
Some of the features offered by Cacti are:
- Unlimited number of graph items can be defined for each graph optionally utilizing CDEFs or data sources from within cacti.
- Automatic grouping of GPRINT graph items to AREA, STACK, and LINE[1-3] to allow for quick re-sequencing of graph items.
- Auto-Padding support to make sure graph legend text lines up.
On the other hand, Graphite provides the following key features:
- carbon - a Twisted daemon that listens for time-series data
- whisper - a simple database library for storing time-series data (similar in design to RRD)
- graphite webapp - A Django webapp that renders graphs on-demand using Cairo
"Free" is the top reason why over 2 developers like Cacti, while over 14 developers mention "Render any graph" as the leading cause for choosing Graphite.
Graphite is an open source tool with 4.59K GitHub stars and 1.2K GitHub forks. Here's a link to Graphite's open source repository on GitHub.
According to the StackShare community, Graphite has a broader approval, being mentioned in 97 company stacks & 21 developers stacks; compared to Cacti, which is listed in 5 company stacks and 5 developer stacks.
Looking for a tool which can be used for mainly dashboard purposes, but here are the main requirements:
- Must be able to get custom data from AS400,
- Able to display automation test results,
- System monitoring / Nginx API,
- Able to get data from 3rd parties DB.
Grafana is almost solving all the problems, except AS400 and no database to get automation test results.
You can look out for Prometheus Instrumentation (https://prometheus.io/docs/practices/instrumentation/) Client Library available in various languages https://prometheus.io/docs/instrumenting/clientlibs/ to create the custom metric you need for AS4000 and then Grafana can query the newly instrumented metric to show on the dashboard.
Pros of Cacti
- Free3
- Rrdtool based3
- Fast poller2
- Graphs from snmp1
- Graphs from language independent scripts1
Pros of Graphite
- Render any graph16
- Great functions to apply on timeseries9
- Well supported integrations8
- Includes event tracking6
- Rolling aggregation makes storage managable3