Graphite vs Prometheus

Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

Graphite
Graphite

300
254
+ 1
39
Prometheus
Prometheus

1.2K
1K
+ 1
190
Add tool

Graphite vs Prometheus: What are the differences?

Developers describe Graphite 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. On the other hand, Prometheus is detailed as "An open-source service monitoring system and time series database, developed by SoundCloud". Prometheus is a systems and service monitoring system. It collects metrics from configured targets at given intervals, evaluates rule expressions, displays the results, and can trigger alerts if some condition is observed to be true.

Graphite and Prometheus can be primarily classified as "Monitoring" tools.

Some of the features offered by Graphite are:

  • 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

On the other hand, Prometheus provides the following key features:

  • a multi-dimensional data model (timeseries defined by metric name and set of key/value dimensions)
  • a flexible query language to leverage this dimensionality
  • no dependency on distributed storage

"Render any graph" is the top reason why over 14 developers like Graphite, while over 32 developers mention "Powerful easy to use monitoring" as the leading cause for choosing Prometheus.

Graphite and Prometheus are both open source tools. Prometheus with 25K GitHub stars and 3.55K forks on GitHub appears to be more popular than Graphite with 4.59K GitHub stars and 1.2K GitHub forks.

According to the StackShare community, Prometheus has a broader approval, being mentioned in 243 company stacks & 85 developers stacks; compared to Graphite, which is listed in 97 company stacks and 21 developer stacks.

What is Graphite?

Graphite does two things: 1) Store numeric time-series data and 2) Render graphs of this data on demand

What is Prometheus?

Prometheus is a systems and service monitoring system. It collects metrics from configured targets at given intervals, evaluates rule expressions, displays the results, and can trigger alerts if some condition is observed to be true.
Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

Why do developers choose Graphite?
Why do developers choose Prometheus?

Sign up to add, upvote and see more prosMake informed product decisions

    Be the first to leave a con

    Sign up to add, upvote and see more consMake informed product decisions

    What companies use Graphite?
    What companies use Prometheus?

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with Graphite?
    What tools integrate with Prometheus?

    Sign up to get full access to all the tool integrationsMake informed product decisions

    What are some alternatives to Graphite and Prometheus?
    Graphene
    Graphene is a Python library for building GraphQL schemas/types fast and easily.
    Grafana
    Grafana is a general purpose dashboard and graph composer. It's focused on providing rich ways to visualize time series metrics, mainly though graphs but supports other ways to visualize data through a pluggable panel architecture. It currently has rich support for for Graphite, InfluxDB and OpenTSDB. But supports other data sources via plugins.
    Pencil
    A web application microframework for Rust
    Kibana
    Kibana is an open source (Apache Licensed), browser based analytics and search dashboard for Elasticsearch. Kibana is a snap to setup and start using. Kibana strives to be easy to get started with, while also being flexible and powerful, just like Elasticsearch.
    Nagios
    Nagios is a host/service/network monitoring program written in C and released under the GNU General Public License.
    See all alternatives
    Decisions about Graphite and Prometheus
    StackShare Editors
    StackShare Editors
    Kibana
    Kibana
    Grafana
    Grafana
    Elasticsearch
    Elasticsearch
    Logstash
    Logstash
    Graphite
    Graphite
    Icinga
    Icinga

    One size definitely doesn’t fit all when it comes to open source monitoring solutions, and executing generally understood best practices in the context of unique distributed systems presents all sorts of problems. Megan Anctil, a senior engineer on the Technical Operations team at Slack gave a talk at an O’Reilly Velocity Conference sharing pain points and lessons learned at wrangling known technologies such as Icinga, Graphite, Grafana, and the Elastic Stack to best fit the company’s use cases.

    At the time, Slack used a few well-known monitoring tools since it’s Technical Operations team wasn’t large enough to build an in-house solution for all of these. Nor did the team think it’s sustainable to throw money at the problem, given the volume of information processed and the not-insignificant price and rigidity of many vendor solutions. With thousands of servers across multiple regions and millions of metrics and documents being processed and indexed per second, the team had to figure out how to scale these technologies to fit Slack’s needs.

    On the backend, they experimented with multiple clusters in both Graphite and ELK, distributed Icinga nodes, and more. At the same time, they’ve tried to build usability into Grafana that reflects the team’s mental models of the system and have found ways to make alerts from Icinga more insightful and actionable.

    See more
    Joshua Dean KĂĽpper
    Joshua Dean KĂĽpper
    CEO at Scrayos UG (haftungsbeschränkt) · | 1 upvotes · 4K views
    atScrayos UG (haftungsbeschränkt)Scrayos UG (haftungsbeschränkt)
    Prometheus
    Prometheus
    Grafana
    Grafana

    Grafana is used in combination with Prometheus to display the gathered stats and to monitor our physical servers aswell as their virtual applications. While Grafana also allows to configure automated alerts and rules, we decided to use Prometheus Alertmanager, as it is offers advanced features for silences (muting of alerts for a specific time) and also allows more fine-grained rules and notifications for each alert.

    See more
    Joshua Dean KĂĽpper
    Joshua Dean KĂĽpper
    CEO at Scrayos UG (haftungsbeschränkt) · | 1 upvotes · 8.5K views
    atScrayos UG (haftungsbeschränkt)Scrayos UG (haftungsbeschränkt)
    Kubernetes
    Kubernetes
    Grafana
    Grafana
    Prometheus
    Prometheus

    We primarily use Prometheus to gather metrics and statistics to display them in Grafana. Aside from that we poll Prometheus for our orchestration-solution "JCOverseer" to determine, which host is least occupied at the moment.

    While there are existing orchestration softwares/suites like Kubernetes, that we also plan to adopt in the future, we're of the opinion that those solutions do not fit our special environment within minecraft and our own solution will outperform them in the limited scope that it needs to cover.

    See more
    Joseph Irving
    Joseph Irving
    DevOps Engineer at uSwitch · | 5 upvotes · 41K views
    atUswitchUswitch
    Thanos
    Thanos
    Prometheus
    Prometheus
    Kubernetes
    Kubernetes

    We recently implemented Thanos alongside Prometheus into our Kubernetes clusters, we had previously used a variety of different metrics systems and we wanted to make life simpler for everyone by just picking one.

    Prometheus seemed like an obvious choice due to its powerful querying language, native Kubernetes support and great community. However we found it somewhat lacking when it came to being highly available, something that would be very important if we wanted this to be the single source of all our metrics.

    Thanos came along and solved a lot of these problems. It allowed us to run multiple Prometheis without duplicating metrics, query multiple Prometheus clusters at once, and easily back up data and then query it. Now we have a single place to go if you want to view metrics across all our clusters, with many layers of redundancy to make sure this monitoring solution is as reliable and resilient as we could reasonably make it.

    If you're interested in a bit more detail feel free to check out the blog I wrote on the subject that's linked.

    See more
    Conor Myhrvold
    Conor Myhrvold
    Tech Brand Mgr, Office of CTO at Uber · | 11 upvotes · 1.1M views
    atUber TechnologiesUber Technologies
    Prometheus
    Prometheus
    Graphite
    Graphite
    Grafana
    Grafana
    Nagios
    Nagios

    Why we spent several years building an open source, large-scale metrics alerting system, M3, built for Prometheus:

    By late 2014, all services, infrastructure, and servers at Uber emitted metrics to a Graphite stack that stored them using the Whisper file format in a sharded Carbon cluster. We used Grafana for dashboarding and Nagios for alerting, issuing Graphite threshold checks via source-controlled scripts. While this worked for a while, expanding the Carbon cluster required a manual resharding process and, due to lack of replication, any single node’s disk failure caused permanent loss of its associated metrics. In short, this solution was not able to meet our needs as the company continued to grow.

    To ensure the scalability of Uber’s metrics backend, we decided to build out a system that provided fault tolerant metrics ingestion, storage, and querying as a managed platform...

    https://eng.uber.com/m3/

    (GitHub : https://github.com/m3db/m3)

    See more
    Sentry
    Sentry
    StatsD
    StatsD
    Graphite
    Graphite
    Grafana
    Grafana
    PagerDuty
    PagerDuty
    Amazon CloudWatch
    Amazon CloudWatch

    A huge part of our continuous deployment practices is to have granular alerting and monitoring across the platform. To do this, we run Sentry on-premise, inside our VPCs, for our event alerting, and we run an awesome observability and monitoring system consisting of StatsD, Graphite and Grafana. We have dashboards using this system to monitor our core subsystems so that we can know the health of any given subsystem at any moment. This system ties into our PagerDuty rotation, as well as alerts from some of our Amazon CloudWatch alarms (we’re looking to migrate all of these to our internal monitoring system soon).

    See more
    Raja Subramaniam Mahali
    Raja Subramaniam Mahali
    Prometheus
    Prometheus
    Kubernetes
    Kubernetes
    Sysdig
    Sysdig

    We have Prometheus as a monitoring engine as a part of our stack which contains Kubernetes cluster, container images and other open source tools. Also, I am aware that Sysdig can be integrated with Prometheus but I really wanted to know whether Sysdig or sysdig+prometheus will make better monitoring solution.

    See more
    Interest over time
    Reviews of Graphite and Prometheus
    No reviews found
    How developers use Graphite and Prometheus
    Avatar of Scrayos UG (haftungsbeschränkt)
    Scrayos UG (haftungsbeschränkt) uses PrometheusPrometheus

    We primarily use Prometheus to gather metrics and statistics to display them in Grafana. Aside from that we poll Prometheus for our orchestration-solution "JCOverseer" to determine, which host is least occupied at the moment.

    Avatar of Onezino Gabriel
    Onezino Gabriel uses GraphiteGraphite

    Utilizando computação em nuvens e o modelo de pagar pelo uso com _graphite _nós conseguimos analisar todos os logs de informação gerada pelo sistema.

    Avatar of Tom Staijen
    Tom Staijen uses PrometheusPrometheus

    Gather metrics from systems and applications. Evaluate alerting rules. Alerts are pushed to OpsGenie and Slack.

    Avatar of HyVive
    HyVive uses PrometheusPrometheus

    We primarily use Prometheus to gather metrics and statistics to display them in Grafana.

    Avatar of Tongliang Liu
    Tongliang Liu uses GraphiteGraphite

    Great metrics visualization tool together with StatsD.

    Avatar of BĂąi Thanh
    BĂąi Thanh uses PrometheusPrometheus
    • Simple operation and easy to deploy.
    Avatar of Roy Olsen
    Roy Olsen uses PrometheusPrometheus

    Predictive monitoring.

    How much does Graphite cost?
    How much does Prometheus cost?
    Pricing unavailable
    Pricing unavailable