GrafanaVSkibana2

It’s a well-known fact that we’re surrounded by huge amounts of data. Even if you manage one single Linux server, you will probably still encounter problems when trying to manage all of your logs because they are intended to detect and act on issues as soon as they happen. The significance of this issue varies based on the size of one’s environment, the role of each host, the services that are installed, and the protocols that are used.

Of course, log data can give us better insights into detecting patterns and allow us to take action more quickly when that information is presented in visualized form. This method of analysis allows IT operations teams to create the transparency that is needed to understand what is occurring at any given point in time.

Kibana and Grafana are two open source tools that can visualize and understand trends within vast amounts of log data. In this post, I will give you a short introduction to each of the tools and highlight the key differences between them.

Kibana

Kibana is a platform for analytics and visualization that allows you to explore, visualize, and build dashboards on top of the log data stored in Elasticsearch clusters. You can perform advanced data analysis and visualize your data in a variety of types of charts, tables, and maps.

kibana image

Many modern IT organizations such as Netflix and Linkedin use the the popular ELK Stack (Elasticsearch, Logstash and Kibana) for log management. Using Kibana within this stack makes it simple to deploy and use visualizations. Once the ELK stack is installed, you will be able to access Kibana’s powerful tools within the “Discover” section of the platform to explore and visualize your log data. Kibana’s simple and easy-to-use dashboard can be used by anyone, even business users with minimal IT skills and knowledge.

Grafana

Grafana is is an open source dashboard tool that commonly works with Graphite, InfluxDB, and OpenTSDB. Newer versions can also work with other data sources such as Elasticsearch.

Essentially, it’s a feature-rich replacement for Graphite-web, which helps users to easily create and edit dashboards. It contains a unique Graphite target parser that enables easy metric and function editing. Users can create comprehensive charts with smart axis formats (such as lines and points) as a result of Grafana’s fast, client-side rendering — even over long ranges of time — that uses Flot as a default option.

grafana dashboard

1. Logs vs. metrics

The main difference is that Grafana focuses on presenting time-series charts based on specific metrics such as CPU and I/O utilization. Kibana, on the other hand, runs on top of Elasticsearch and can create a comprehensive log analytics dashboard. For example, Grafana does not allow for data search and exploring.

2. Role-based access

By default, the Kibana dashboard is public. There are no built-in role-based access (RBA) controls. If you need to set up permission levels for multiple users, you will have to purchase  Shield to add the additional configuration overhead. In comparison, Grafana’s built-in RBA allows you to maintain user and team access to dashboards. In addition, Grafana’s rich API can be used for tasks such as saving a specific dashboard, creating users, and updating data sources. You can also create specific API keys and assign them to specific roles.

3. Dashboard flexibility

While Kibana has a large number of built-in types of charts, the control over them was initially limited. Initially, Grafana contained several more options for flexible navigation and chart usage using tools such as the Y-Bar when choosing a specific time series. However, with the enhancements presented in Kibana 4 such as the ability to save elements and drag-and-drop them into new dashboards, we can expect Kibana to close the gap quickly.

4. Integration of data sources

Grafana supports many different storage backends. For each data source, Grafana has a specific query editor that is customized for the features and capabilities that are included in that data source. However, as mentioned above, Kibana’s native integration within the ELK Stack makes the setup fairly simple and user-friendly.

5. Open source communities

Both open source tools are powerful. When looking closely at the Grafana on Github, you will see roughly 7,000 code commits while Kibana has more than 12,000. However, to see the true strength Kibana’s open source community, look at what Google Trends reveals about the ELK Stack as a whole:

kibana grafana

Even when adding Graphite into the mix, ELK’s traction is still growing quickly and has the potential to lead in the near future:

kibana graphite

Working together

Both Kibana and Grafana are powerful visualization tools. However, the Grafana and InfluxDB combination is used for metric data whereas Kibana is part of the popular ELK Stack, which provides more flexibility when exploring log data.

Both platforms are good options and can even sometimes complement each other. First, use Kibana to analyze your logs. Then, export the data into Grafana as the visualization layer. Both rely on the same Elasticsearch repository.

Logz.io is a predictive, cloud-based log management platform that is built on top of the open-source ELK Stack (of which Kibana is part). Start your free trial today!

Asaf Yigal is co-founder and VP Product at Logz.io. Prior to Logz.io, Asaf co-founded Currensee, a social-trading platform, which was later acquired by OANDA in 2013. Prior to Currensee, Asaf played executive roles at Akorri in developing an end-to-end performance monitoring platform and at Onaro in developing a storage resource management platform. Both Akorri and Onaro were acquired by NetApp. Prior to Onaro, Asaf headed a research team in the Israeli Navy, taking an artificial intelligence system to military deployment. Asaf holds a B.S. from the Technion and is an Instrument-rated private pilot.