Phobos + Azure Application Insights Akka.Cluster Dashboard
The Phobos + Azure Application Insights Akka.Cluster Dashboard is designed to help your team immediately observe the following things about your Akka.Cluster applications:
- The overall state of the cluster - the number of members of each status, each role type, and the total number of unreachable nodes over the past arbitrary window of time.
- Error rates and logging activity across the cluster - what do the global logging rates look like and which cluster nodes and logging which types of errors over how much time?
- Total actor counts, start / stop rates, crash rates, and message processing - this paints a complete picture of how many actors are alive throughout the cluster, what types of messages are processing, how are actors churning (starts / stops,) and what types of exceptions are being thrown by which actor types?
Here's a preview of what the Phobos + Azure Application Insights Akka.Cluster Dashboard demonstrates:
Note
This dashboard will be installed into your Azure Resource Group as an Azure Monitor Workbook Template, which you will in turn use to create a Workbook that is connected to your own Azure Application Insights resource.
Installation Instructions
First, you will need to clone the phobos-dashboards
repository from Petabridge's Github account and then open the /appinsights
folder.
To install this Azure Monitor Workbook template into your Azure subscription, you will need to import the ARM template included in the repository into one of your resource groups: https://github.com/petabridge/phobos-dashboards/blob/master/appinsights/phobos-1.x/phobos-appinsights-ARM-template.json
There are multiple ways you can do this:
- Deploy ARM templates via Azure Portal;
- Deploy ARM templates via Azure CLI; or
- Deploy ARM templates via Azure PowerShell.
Deploying the Akka.NET Azure Monitor Workbook Template to Your Azure Subscription
For the purposes of keeping this tutorial as visual as possible, we're going to deploy our Phobos + Akka.NET Cluster Dashboard using an ARM template via the Azure Portal UI that will create an Azure Monitor Workbook template for us.
Important
This tutorial assumes that you already have an Azure Resource Group with an active Application Insights resource receiving data from Phobos in it. If you don't have one yet, please create one before attempting to import this dashboard.
Step 1 - to deploy our ARM template through the Azure portal, select Create a resource, search for template, and then select Template deployment.
Step 2 - select Create and Build your own template in the editor.
Step 3 - in the Edit template dialog, copy and paste the JSON from https://github.com/petabridge/phobos-dashboards/blob/master/appinsights/phobos-1.x/phobos-appinsights-ARM-template.json into the editor or if you've cloned it locally, load the JSON file directly via the Load file dialog.
Once that's all finished press Save - and now you'll have a chance to confirm which Resource Group you want to deploy the template in and what you want the Azure Monitor Workbook template to be called.
Press Review + create to move forward and deploy the Azure Monitor Workbook template.
After a minute or two, you should see the template appear inside your desired resource group:
If you click on Go to resource you will be directed to this page:
From there, click on Open Workbook with Azure Monitor to fully make use of this template.
Create an Azure Monitor Workbook from Template
Now that we've deployed this template, we need to create a new Azure Monitor Workbook instance that connects this template with our Application Insights data being produced by Phobos.
When you first open the deployed template instance, you will see several "No Application Insights resources are selected. Please select Application Insights." error messages - we're going to fix this by selecting Edit in the top-left corner of the workbook.
And then click the gear icon, which will take you to Settings.
Click on Add Resources.
And then select your Azure Application Insights resource which contains your Phobos + Akka.NET data for this dashboard and press Apply.
Once that's done click Apply Changes and then Save and Close.
Your workbook template should now be fully connected to your data from Application Insights - and you'll be able to test this, provided that you've installed Phobos and have it connected to Application Insights, by attempting to select one of your Akka.Cluster nodes from the address
parameter.
However, none of the data on your charts will render just yet - there is still one more step: we need to save our changes into a new Azure Monitor Workbook, which will allow these charts to begin automatically updating behind the scenes.
Click on the Done Editing button.
And then select Save - pick a resource group and an appropriate name for your workbook!
And that's it! You can now view all of your Akka.NET metrics view this workbook.
Note
This template will be periodically updated by the Petabridge team and possibly other contributors - to stay on top of the most recent changes, please subscribe to notifications on the Phobos Dashboards Github repository: https://github.com/petabridge/phobos-dashboards