Grafana vs Nagios vs Prometheus

Get Advice Icon

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

Grafana
Grafana

4.1K
3.1K
+ 1
318
Nagios
Nagios

661
549
+ 1
95
Prometheus
Prometheus

1.3K
1.3K
+ 1
197

What is 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.

What is Nagios?

Nagios is a host/service/network monitoring program written in C and released under the GNU General Public License.

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 Grafana?
Why do developers choose Nagios?
Why do developers choose Prometheus?

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

    Be the first to leave a con
      Be the first to leave a con

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

      What companies use Grafana?
      What companies use Nagios?
      What companies use Prometheus?

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

      What tools integrate with Grafana?
      What tools integrate with Nagios?
      What tools integrate with Prometheus?

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

      What are some alternatives to Grafana, Nagios, and Prometheus?
      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.
      Graphite
      Graphite does two things: 1) Store numeric time-series data and 2) Render graphs of this data on demand
      Splunk
      Splunk Inc. provides the leading platform for Operational Intelligence. Customers use Splunk to search, monitor, analyze and visualize machine data.
      NetData
      Netdata is distributed, real-time, performance and health monitoring for systems and applications. It is a highly optimized monitoring agent you install on all your systems and containers.
      New Relic
      New Relic is the all-in-one web application performance tool that lets you see performance from the end user experience, through servers, and down to the line of application code.
      See all alternatives
      Decisions about Grafana, Nagios, 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 · 4.1K views
      atScrayos UG (haftungsbeschränkt)Scrayos UG (haftungsbeschränkt)
      Grafana
      Grafana
      Prometheus
      Prometheus

      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)
      Prometheus
      Prometheus
      Grafana
      Grafana
      Kubernetes
      Kubernetes

      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 · 44.2K 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.4M 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
      StackShare Editors
      StackShare Editors
      Grafana
      Grafana
      StatsD
      StatsD
      Airflow
      Airflow
      PagerDuty
      PagerDuty
      Datadog
      Datadog
      Celery
      Celery
      AWS EC2
      AWS EC2
      Flask
      Flask

      Data science and engineering teams at Lyft maintain several big data pipelines that serve as the foundation for various types of analysis throughout the business.

      Apache Airflow sits at the center of this big data infrastructure, allowing users to “programmatically author, schedule, and monitor data pipelines.” Airflow is an open source tool, and “Lyft is the very first Airflow adopter in production since the project was open sourced around three years ago.”

      There are several key components of the architecture. A web UI allows users to view the status of their queries, along with an audit trail of any modifications the query. A metadata database stores things like job status and task instance status. A multi-process scheduler handles job requests, and triggers the executor to execute those tasks.

      Airflow supports several executors, though Lyft uses CeleryExecutor to scale task execution in production. Airflow is deployed to three Amazon Auto Scaling Groups, with each associated with a celery queue.

      Audit logs supplied to the web UI are powered by the existing Airflow audit logs as well as Flask signal.

      Datadog, Statsd, Grafana, and PagerDuty are all used to monitor the Airflow system.

      See more
      Kibana
      Kibana
      Splunk
      Splunk
      Grafana
      Grafana

      I use Kibana because it ships with the ELK stack. I don't find it as powerful as Splunk however it is light years above grepping through log files. We previously used Grafana but found it to be annoying to maintain a separate tool outside of the ELK stack. We were able to get everything we needed from Kibana.

      See more
      Kibana
      Kibana
      Grafana
      Grafana
      Elasticsearch
      Elasticsearch

      I use both Kibana and Grafana on my workplace: Kibana for logging and Grafana for monitoring. Since you already work with Elasticsearch, I think Kibana is the safest choice in terms of ease of use and variety of messages it can manage, while Grafana has still (in my opinion) a strong link to metrics

      See more
      GK Palem
      GK Palem
      Grafana
      Grafana
      Kibana
      Kibana

      For our Predictive Analytics platform, we have used both Grafana and Kibana

      Kibana has predictions and ML algorithms support, so if you need them, you may be better off with Kibana . The multi-variate analysis features it provide are very unique (not available in Grafana).

      For everything else, definitely Grafana . Especially the number of supported data sources, and plugins clearly makes Grafana a winner (in just visualization and reporting sense). Creating your own plugin is also very easy. The top pros of Grafana (which it does better than Kibana ) are:

      • Creating and organizing visualization panels
      • Templating the panels on dashboards for repetetive tasks
      • Realtime monitoring, filtering of charts based on conditions and variables
      • Export / Import in JSON format (that allows you to version and save your dashboard as part of git)
      See more
      Trey Tacon
      Trey Tacon
      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 Grafana, Nagios, and Prometheus
      Review ofGrafanaGrafana

      analyze heap dump and many logging or traces

      How developers use Grafana, Nagios, and Prometheus
      Avatar of ShadowICT
      ShadowICT uses NagiosNagios

      We use Nagios to monitor our stack and alert us when problems arise. Nagios allows us to monitor every aspect of each of our servers such as running processes, CPU usage, disk usage, and more. This means that as soon as problems arise, we can detect them and call out an engineer to resolve the issues as soon as possible.

      Avatar of ShadowICT
      ShadowICT uses GrafanaGrafana

      We use Grafana to view live stats relating to our servers such as memory and CPU usage. We also use Grafana to monitor our gaming servers for data such as latency and player counts. This allows us to generate effective analytics and see when problems arise.

      Avatar of Andrew Gatenby
      Andrew Gatenby uses GrafanaGrafana

      Everyone likes graphs, right?! This isn't a tool we actively use right now, but paired with Prometheus we want to use it to have visual monitors on things like API cluster health, status, queue stats, DB/redis query and cache stats etc.

      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 Scrayos UG (haftungsbeschränkt)
      Scrayos UG (haftungsbeschränkt) uses GrafanaGrafana

      Grafana is used in combination with Prometheus to display the gathered stats and to monitor our physical servers aswell as their virtual applications. We also use Grafana to get notifications about irregularities.

      Avatar of sapslaj
      sapslaj uses GrafanaGrafana

      Grafana takes the data from InfluxDB and presents it in a nice flexible format. Bonus points for built-in alerts and playlists (cycles through different dashboards automatically)

      Avatar of BĂąi Thanh
      BĂąi Thanh uses GrafanaGrafana
      • Graph report with many panels and Dashboard.
      • Easy to deploy, and view performance of system.
      • Intergrating with many datasource: Prometheus, CloudWatch
      • Alerts
      Avatar of Analytical Informatics
      Analytical Informatics uses NagiosNagios

      We use Nagios to monitor customer instances of Bridge and proactively alert us about issues like queue sizes, downed services, errors in logs, etc.

      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 OnlineCity
      OnlineCity uses NagiosNagios

      We use nagios based OpsView to monitor our server farm and keep everything running smoothly.

      Avatar of HyVive
      HyVive uses PrometheusPrometheus

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

      Avatar of Peter Degen-Portnoy
      Peter Degen-Portnoy uses NagiosNagios

      Monitor web servers, databases, utility servers

      Avatar of Veggie Sailor
      Veggie Sailor uses NagiosNagios

      For the monitoring full stack of the platform.

      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 Grafana cost?
      How much does Nagios cost?
      How much does Prometheus cost?
      Pricing unavailable
      Pricing unavailable
      Pricing unavailable