Azure dashboards: Azure Portal vs. SquaredUp (Part 1 – VMInsights)

Azure dashboards: Azure Portal vs. SquaredUp (Part 1 – VMInsights)

Be it be on-premise or in Azure, monitoring your resources is extremely important. While the popular monitoring tool to use on premise remains to be SCOM, many organizations with a presence in the cloud have started to explore Azure Monitor to fulfil their monitoring needs in Azure. Recently, we discussed Azure Monitor and its capabilities extensively in our Azure Monitor Learning Path blog series. There, we cover a huge breadth of topics, including a breakdown of what Azure monitor is, its components (Log Analytics and Application Insights), collecting data into Azure Monitor, working with the data using KQL, visualizing the data, and setting up alerting.

For now, we are going to revisit the data visualization part of the series – both for Log Analytics and Application Insights. If you’ve been working with Azure Monitor yourselves or following along on the AMLP series – you may have realized that data visualization in Azure Monitor can sometimes be very confusing and decentralized. You have to click through a lot of different wizards, select from the visualization options provided (queries/workbooks/dashboards, etc) and it is on the whole a time-consuming process.

This is where SquaredUp steps in and simplifies it all for you!

SquaredUp for Azure lets you create a bunch of different useful dashboards, very easily, and from a single console. SquaredUp for Azure also provides you some features that triumph over the native options available. But hey, don’t just take my word for it. Let me show you what I mean. 😊

We’ll start by creating a few simple dashboards – first in Azure Monitor, then in SquaredUp for Azure. Then we will compare our overall experience in terms of ease of creation, time spent, data visualization options, shareability, etc. I’ll start with a dashboard for Virtual Machines (VMs) in this blog post, and move on to apps and cost in the next two. Sound fun?

Let’s get into it!

Executive summary:

  1. Azure Monitor
    1. KPI counters
    2. Health status
    3. Cost analysis
  2. SquaredUp
    1. Health status
    2. KPI counters
    3. Cost analysis

Azure portal vs SquaredUp dashboards
(Part 1 – VM Insights)
 

Task: Create a dashboard to show a comprehensive all-around view of my virtual machines hosted in Azure as well as on-prem VMs connected to Azure Log Analytics workspaces. It should show all my VM’s – with their (1) KPI counters, (2) health status, and their (3) cost analysis.

Let’s start with Azure Monitor and then move on to SquaredUp.

 

In Azure Monitor:

(1) KPI counters

Like previously mentioned, there is no central console for dashboards here. So let’s try a few different ways.

First, let’s hit the “Dashboard” button on the home page:

Azure Monitor portal dashboard button

I’m presented with a selection of tiles.

Tile gallery in Azure Monitor dashboard portal

I see there’s a “metrics chart” tile to pick from. Let’s select it, that’ll come in handy for my KPIs.

Metrics chart in Azure Monitor dashboard portal

Okay, now I’ll have to hit the “Done customizing” button on top and configure each metric tile separately.

Next, I’ll select my scope. Our task was to build a dashboard for all VMs in a subscription – so that’s what I shall choose here:

Select a scope in Metrics in Azure Monitor dashboard portal

Okay – we’ve got a problem. I can’t seem to select multiple VMs at once here. Only one VM at a time. Uh-oh. Guess we’ll have to go one by one then.

So, let me add one VM in the Percentage CPU graph:

Add Virtual Machines one by one in the Azure Monitor dashboard 

To add another server now, I’m going to have to click “Add metric” and repeat the same process all over again.

In the Azure dashboard portal, add another server by clicking "add metric"

10 minutes later and I’ve only managed to get 3 of my VM’s in. Now imagine performing this series of steps potentially hundreds or even thousands of times depending on the number of VM’s you have. AND this is just for ONE of the metrics. *shudders*

Surely there’s a better way of doing this, you might be thinking. Let’s try workbooks. Browse into Azure Monitor > Workbooks:

Create dashboards with Azure Monitor Workbooks

Let’s create a new workbook. You can make a dashboard with a parameter, query, metric, etc. For now, let’s add a metric.

Add metric to new Azure Monitor Workbook

Okay, that’s much better! I can select multiple VMs here.

So after selecting a few VM’s (one check box at a time), I selected the metric I want to show by clicking on the “Add metric” button. I then saved this workbook, and pinned this view to my dashboard.

Create multiple VMs in Azure Monitor Workbook and pin to your dashboard

Let’s see how my dashboard is coming along.

Azure Monitor dashboard

Okay, let’s say we’ve “completed” the KPI display part of the dashboard. Though as you can imagine, depending on your need, you may need a bunch more metrics and a lot more VMs so you’ll have to go through that process that many times.

(2) Health status

Onto the next task – a quick list of my VM’s in a subscription with their health status (say running/switched off status).

On the Dashboard service from the home page, there doesn’t seem to be any tile that can help me with this.

Maybe workbooks?

Use workbooks to show VM's health status in Azure Monitor dashboard 

I found this pre-built workbook in the library called “Agent Health”, let’s see what it does.

Pre-built workbook in Azure Monitor library called "Agent Health"

Hmm…okay that looks useful. But a little more investigation reveals:

  1. I can’t drill down into all of these machines, clicking on the Azure resource just drops me into the resource.
  2. This is only for the machines with an agent installed, so my machines with no agent aren’t listed.
  3. It is made with a super complicated KQL (see below), so if I were to make any changes in the view, I’d have to wrestle with that query which honestly, is a little beyond my expertise. I’m sure some of you can relate!

Can't drill down into the machines in Azure Monitor Agent Health

Anyway, let’s pin this view to the dashboard for now.

Azure Monitor dashboard

Now, that dashboard doesn’t look optimized for display (with all the scroll bars and blank space), but you may be able to fix some of that by moving things around and adjusting the size.

Okay – last thing left to do now is the cost analysis! Let’s add that.

 

(3) Cost analysis

As always, starting from the Dashboard service – didn’t find anything.

Then moving on the Workbooks – again, didn’t find anything I could use.

Lastly, I’m trying the dedicated cost analysis service in Azure, “Cost Management”. Let’s see if I can do something from there.

Dedicated cost analysis feature in Azure "Cost Management"

I see a “Cost analysis” tab on the left, and a few filters to narrow down the results.

Use filters in the "cost analysis" tab in Azure Monitor's Cost Management feature

I changed the scope to the subscription I wanted, and added a filter to only show the virtual machines.

Azure Monitor Cost Management

So I see it’s giving me a view of the combined cost of all VMs in the subscription. I was looking forward to see a VM-wise breakdown but this isn’t too bad, I guess.

If I click on “Cost by resource”, and then apply the filters again, I get a view like this:

"Cost by resource" tab in Azure Monitor Cost Management

Not very dashboard-like, but that’ll do.

After pinning that to the dashboard, this is the final result:

Azure Monitor dashboard showing performance, health and cost

Phew! Done! I’ve completed the task. But mind you – I skipped adding many things in the process simply because it was too repetitive and time-consuming (such as adding more resources, more metrics, etc.).

So having done all that, here’s my verdict:

  1. There are many, many, many wizards to traverse, and on average, 15 clicks per wizard.
  2. That took a looong time.
  3. It required a fairly deep understanding of the portal.
  4. Finding things was not very easy.
  5. Too many options!
  6. These dashboards are more like “shortcuts”. They don’t offer much drill-down, if at all.
  7. End result is a “make-it-work-somehow” kind of display, without many good dashboard-like features.

 

With SquaredUp:

(1) Health status

Logging into SquaredUp, I can see the big old “Create dashboard” button – we can get straight to the task!

Creating a dashboard in SquaredUp for Azure

After hitting the + button, I’m presented with a bunch of tiles.

Available tiles in SquaredUp for Azure dashboards include alerts, health status, cost management, performance

I’ll select the Status tile, since one of my tasks is to display the status of the VM.

Selecting the 'status' tile in SquaredUp for Azure dashboard

As you can see, there are different formats we can use to display the status. Let’s choose the block format.

Following that, we select our scope:

Select scope in SquaredUp's washboarding solution for Azure

Now this was VERY helpful. All I had to do was choose the subscription and simply filter my resources by their type! And that’s about it – I now have my status view ready.

VM status view in SquaredUp for Azure

You may remember, the one we did in Azure using workbook was only for VMs with agent. This one includes all the VMs. See the OPP-ORION VM in red above? That’s missing in the Azure dashboard.

Cool, task one complete!

 

(2) KPI counters 

Next up, the KPI.

Simply hit the + sign between the two orange dotted lines on the same page, and the panel for tile selection is presented again.

Tile selection panel in SquaredUp for Azure

This time, I’ll choose the Performance tile.

There are a few formats to choose from – I’ll select the line graph.

Select the performance tile and line graph in SquaredUp for Azure

Again, I chose the same scope.

Select scope in SquaredUp, a dashboarding tool for monitoring your Azure resources

Now as soon as I click the box under the metric section, I’m presented with the platform metrics concerning that resource type.

Select platform metrics in SquaredUp for Azure monitoring dashboard

I’ll choose the Percentage CPU metric as we did in the portal.

And the graph has already rendered! Further down in options, I can choose to see only the top N results, so my graph isn’t too cluttered. I have chosen to view only 5.

And we’re done! That’s one metric down. Onto the next KPI.

I want to position this beside the other KPI, in the same row, so it’s easy to see. SquaredUp lets me do that very easily.

Positioning tiles next to each other in SquaredUp for Azure dashboards

After dragging and adjusting the length of your new tile, configure it the same way as the last one, but with “Disk Read Operations/Sec” metric this time.

5 minutes on, and I’m done.

SquaredUp for Azure dashboard showing health status and performance KPI

Task 2 – complete!

 

(3) Cost analysis

Onto the last task, cost analysis broken down per VM.

Hitting the orange + button at the bottom again, I’m presented with the tile selection panel. And one of them says Cost Management. Let’s see what it can do.

Select Cost Management in SquaredUp for Azure tile selection panel

As usual, a few formats to choose from. That Treemap option sounds really fancy!

3 minutes into the future, and we’re done.

SquaredUp for Azure cost management tiles feature differently sized boxes that reflect the different costs of your resources

Sweet! This is much better. The boxes are even sized differently according to the difference in cost, so you can tell where your money is going at a glance.

We can also use another tile called the Matrix tile that basically combines all this in a single view.

The Matrix tile shows the costs of your Azure resources in a single view, in SquaredUp for Azure dashboards

And just like that, my dashboard is all done and ready to go!

SquaredUp for Azure Cost Management dashboard

Now that is one cool dashboard. But wait, that’s not all! It gets even better. You can actually drill down into these resources by clicking on them. Click on one, and you then jump into another set of visualizations – to what we call “perspectives”. They’re scoped to show the data that’s relevant to that particular resource, not just for Azure, but also for external resources. You can see on the top there are multiple perspectives, such as Insights, alerts on that resource, ServiceNow incidents on that resource and so on.

SquaredUp for Azure dashboards show multiple perspectives - insights, alerts, ServiceNow incidents on that resource etc.

Alright. Now for my verdict on SquaredUp for Azure:

  1. Very easy to scope
  2. One place to operate from
  3. Very easily customizable
  4. Very quick to create
  5. Drill-down into various perspectives
  6. A “proper” dashboard instead of “shortcuts”
  7. Beautiful look and feel!

 

That is it for this part of our 3-part series on Azure dashboards. That took longer than we expected, but most of it was consumed by the Azure dashboard and its infinite wizards!

In the next part, we will try to make another dashboard – one all about applications!