Features of the ideal observability platform

Sindhu Murugavel
3 min readOct 27, 2020

This article advises on what features an ideal dashboard should have. This way one can build the right observability platform to envision the right metrics for your customer.

However, before you start thinking about what platform you want to build, I advise you to evaluate what you want to see and then tailor the platform to suit those needs.

What can we visualize:

There are three main elements that can be visualized on any dashboard:

  • Data metrics: Time taken for a certain dataset to be loaded, Volume of data being loaded etc.
  • Application metrics: Different stages of a job, tasks in the job, memory used during each stage or task etc.
  • Infrastructure metrics: Cluster cores and memory used, nodes available in the cluster and the capacity used, status of apps on the cluster, queue status etc.

If you capture all the three above metrics, then you are creating a complete ecosystem of observability for your platform.

Dashboard’s Core Features:

A handful or all of the listed features can give you the most fantastic dashboard that makes your business customer happy.

  1. Beautiful visualizations:

If the picture ain’t pretty, nobody cares about what we are observing anyway, right? This is a crucial factor to make sure the tool you build or buy is capable of providing elegant and attractive screens like the ones you see in a military base.

2.User-friendly interactions:

The tool should allow quick interactions, highlights and hover features to represent what a certain chart means so that any user sitting in front of it can understand what it means without having to be confused or have someone explain it.

3. Instantaneous:

Updates on the screen should be instantaneous without hitting the refresh button. Period — This is not the 19th century anymore.

4. Streaming:

To learn what’s going on at this nanosecond, events, metrics and logs happening at this nanosecond need to be streaming in. The Real-time capability of a dashboard is directly proportional to the real-time data feeding in.

5. Drill down:

If we reflect every little detail on the dashboard then it might as well be a word document or a boring powerpoint presentation at that point. The user should be capable of drilling down from red alerts on the dashboard to find details of why a certain process is failing unexpectedly and thereby get to the root of the problem, literally.

6. Highly available:

If this is a dashboard that’s going to bring value that even saves a couple thousand dollars for the company, it might be optimal to make sure it is always available and has a 24x7 uptime.

7. Data transformations on-the-fly:

Managing the dashboard is hectic enough that you don’t want to manage the data and the baggage of transformations that come alongside for deriving the right insights. The framework should be capable of handling these data transformations on the fly so that there is no need for a backend.

8. Security:

Obviously any tool of choice needs to integrate with your company’s security model else it’s all a moo point. For example, if your company uses LDAP security model then the framework needs to be comply with it so that it can be used.

9. Drag-Drop Widgets:

Templates and drag-drop widgets makes any user’s life easy when it comes to creating a fresh new dashboard.

10. Sharing:

For collaboration, whether it’s on a team level or executive level — emails are no fun. It might be easier to leverage communication channels like Slack, Webex Teams etc so that it can be shared at realtime in a simple way.

11: Artificial Intelligence:

There is probably a full time person sitting in front of an important dashboard to observe if something goes wrong but it might make sense to have some kind of an AI element integrated into the tool of choice to detect possible failures and notify before anything happens.

Building the ideal observability platform can be overwhelming. Selecting the features you need based on the data you have can help build the right platform as the first step. This framework can always plugin new elements as your data framework grows.

--

--