Showing posts with label Application Insights. Show all posts
Showing posts with label Application Insights. Show all posts

Saturday, September 22, 2018

SCOM - GSM to Azure Application Insights Migration Walkthrough (Part 1)

In my previous post, I talked about the recently announced retirement of the Global Service Monitor (GSM) feature and the need to start migrating your existing web application tests to Azure Application Insights. In this post, I'll walk through the migration process to help get you started.


Prerequisites

The migration script has the following prerequisites:
  • Azure Subscription -  your subscription name can be found in the Subscriptions view within the Azure portal.
  • ResourceGroupName - refers to the resource group in Azure where all the tests will be migrated to. If you don't have a resource group created in Azure, the script will create a resource group with the name you provided in the parameters.
  • ResourceLocation - refers to the location of the resource group metadata in Azure.
  • Azure PowerShell Module - needs to be installed (download available here). Be aware that his module requires PowerShell version 5 or higher to be installed so if you're installing on a Windows Server 2012 R2 server, there's a good change that you'll need to reboot to meet this requirement.
  • SCOM PowerShell Module - needs to be installed if you're running the script from anywhere other than a SCOM server (installer can be found on the SCOM media).
  • Internet Connectivity - you'll need a working internet connection on the computer that you choose to launch the migration script from.

Limitations

You'll also need to be aware of the following limitations in Application Insights:
  • Application Insights has a maximum capacity of 800 web availability tests per resource group and there's a limit of 100 web availability tests for each application component you need to monitor.
  • GSM allows you to enable alerts based on a specific HTTP status code. For HTTP status code 200 in Application Insights, you will see a Success returned and for all other codes, they will show a Failure.
  • GSM allows you to create Alerts on content match. Application Insights only supports the 'Content must contain' parameter.
  • GSM allows Performance monitoring for a website based on a number of performance metrics (shown in the following screenshot) however, Application Insights does not have a mapping to automatically collect these performance metrics for websites. You would only see the Response Time for tests; the other Performance metrics on the list will not be monitored.

Reviewing GSM Test Configurations

Before you kick off the migration script, it'd be a good idea to take a note of the existing configuration settings of your GSM tests in SCOM so you can validate those configuration settings come over to Azure Application Insights. For my demo SCOM environment, I've currently got the following two GSM web application tests configured....


One of these GSM tests performs external monitoring for a legacy demo web application (DinnerNow) that I sometimes use in my Application Performance Monitoring (APM) presentations and the other GSM test is monitoring the URL to this blog. In the following few screenshots, we'll dig into the configuration of the GSM test that's monitoring my blog URL.

This screenshot shows the actual URL that is to be monitored with GSM....


Here, we can see all of the external locations that GSM is configured to monitor my blog URL from. I've chosen five different locations around the globe and my expectation would be that if I migrate this test up to Azure Application Insights, these locations would be configured there as external monitoring points for the test.


In the next screenshot, I get a summary of the test locations along with an understanding of the Test Frequency (1 hour) and estimated monthly external transaction count (3,600). The lower I configure the Test Frequency setting here, the higher the number of monthly transactions. Again, these configuration settings are something that I would expect the migration over to Azure Application Insights to retain.


Here's a final summary of the configuration settings for my external blog URL monitor....


Once you've confirmed the configuration settings of your existing GSM tests, it's time to get down to the migration stage.

Note: Keep in mind that if things go horribly wrong with the migration, your existing GSM tests still remain unchanged in SCOM and there's no 'point-of-no-return' stage whereby you have to confirm deletion of them.

Running the Migration Script

The following steps will walk you through what you need to do to get the migration of your GSM tests to Azure Application Insights kicked off (these steps assume you have all prerequisites configured and in place)..

Login to your subscription in the Azure portal and create a new resource group to be used for the newly migrated GSM tests.

Note: Manually creating a new resource group is an optional step and the migration script will do this automatically for you if you have specified a resource group name that doesn't exist. For testing purposes, I prefer to keep control of where my resources are created and if things go wrong with the migration, I can always then just delete the resource group and start again.

Here's a screenshot of a new empty resource group titled GSM2AppInsights - which I've created specifically for this migration demo...


Save the script from the Microsoft Download Center here to a local folder on the machine that you want to run the tool from (we’ll use a SCOM Management Server in this example).

Launch a PowerShell session with Administrative permissions, browse to the directory that you’ve saved the script to and run the following command (example shown in the following screenshot):
.\MigrateGSMToAI.ps1 -SubscriptionName "<AZURE_SUBSCRIPTION_NAME>" -AzureResourceGroupName "<RESOURCE_GROUP_NAME>" -ResourceLocation "<RESOURCE_LOCATION>"


At the Security Warning prompt, type R to run the script once as shown here....


When the Sign in window presents itself, key in the relevant credentials with access to the Azure subscription you wish to migrate the GSM test to.


After the script launches, you'll be presented with various pieces of information on its progress - similar to what's shown in the following screenshot....


The script shouldn't take too long to run (dependent of course, on the number of GSM tests you have to migrate) and soon, you should be presented with a message stating that everything has been migrated successfully along with a reference to where you can find the migration log file.


If I browse to the location on my server where the log file can be found, I can see that there's a specific log file for each migrated GSM test as well as the MigrationLog.txt file shown here...


Clicking in to MigrationLog.txt gives me confidence that my tests have all been migrated to Azure Application Insights successfully.


Confirming the Migration

Once the script has completed and the log files have been checked, it's time to jump back into the Azure portal to take a look at our newly migrated GSM tests.

In the following screenshot we can see that the script has created two new Azure Application Insights web application tests within my GSM2AppInsights resource group.


After a short while of waiting, I can see each of my GSM tests light up with availability data. Here's the two migrated GSM tests now actively monitoring web availability within Azure Application Insights...


From there, I can pivot into the specific web availability test that I had configured to monitor my blog URL. All of the external locations that the original GSM test was configured for can now be seen as monitoring locations within Application Insights as shown here....


If I edit this test, I can see all of the original settings that I had in GSM have been migrated over.


Clicking on any of the green (or red) dots from within the Application Insights availability test view, I'm presented with an End-to-End view of the transaction - including details about each of the response headers the test has encountered (awesome!)


Conclusion

After working through this migration process from start-to-finish in less than an hour, I can confirm that the GSM migration script works really well and as expected. The script leaves your existing GSM tests in place and working back in SCOM so if things don't quite work out for you the first time round, you can always delete the resources in Azure and start it again.

In my next post on this topic, I'll walk through configuring Azure alerts for the newly migrated web application tests along with demonstrating how to get visibility of these tests back in SCOM using the latest Azure Management Pack.


Monday, September 17, 2018

SCOM - Global Service Monitor Heads to the Retirement Home

Last week, Microsoft announced that Global Service Monitor (GSM) -  the cool add-on for SCOM that gave us 'Outside-In' monitoring capability - will be hanging up its synthetic transactions and heading to the legacy solutions retirement home on 7th November 2018.


This solution was a very useful addition to our SCOM deployments when we wanted to get an external perspective of the health and performance of our web applications from locations across the globe and I've been blogging about it on and off for the best part of six years now.

The retirement announcement doesn't come as a massive surprise though as earlier this year, myself and a number of other MVP's began to notice that the tool had stopped working due to DNS resolution errors and although those issues were resolved, the writing was on the wall for its end-of-life.

So What Happens Now?

To be fair to Microsoft, they might be retiring GSM - but they're not removing the 'Outside-In' monitoring capabilities that we've become accustomed to and as part of the retirement announcement for GSM, they've also announced a new tool/script that will help you migrate your existing GSM tests over to the awesome Azure Application Insights platform.

This is a nice alternative to have as Application Insights supports the same single URL ping and multi-step web tests that GSM supported, the same frequency of the tests can be configured and the same geo-locations are also supported.

In true Microsoft monitoring fashion and as a final nod to GSM's integration with SCOM, after the expiry date in November, you'll receive an alert in the SCOM console notifying you that GSM will no longer work and that it has been retired!

Integrating the Migrated Tests with SCOM

If you're thinking that this all sounds well and good but a migration away from GSM and into Application Insights means you no longer get visibility of your external web application tests in SCOM, then Microsoft have you covered here too.

Using the brand new CTP version of the Azure Management pack (accessible here), you can integrate with your Application Insights resource group and view the alerts from the newly migrated web tests directly within the SCOM console.

How Much Will It Cost?

The nice thing about this migration process is that Microsoft have committed in their original post on the retirement of GSM that any web application tests that get migrated over to Azure Application Insights will not incur any additional costs! Here's a couple of snippets about this free-of-charge offer that I've taken directly from that post:

"GSM was provided as a software assurance benefit of your System Center purchase. When you migrate to Azure Application Insights, Microsoft will transition migrated tests and alert rules at no additional charge."

"Only the tests which are migrated using the script, would be provided at no additional charge in Azure Application Insights."

Conclusion

I think that with the rapid pace of cloud adoption, the sheer power and scale of Azure and factoring in the guarantee from Microsoft that these migrated tests won't cost anything extra in your Azure subscription, migrating them to Application Insights is a no-brainer.

You can download the new GSM to Azure Application Insights migration script and its associated documentation from here.

In my next post on this topic, I'll walk through the process of configuring and deploying the new script to ensure a smooth migration of those GSM web application tests to Azure. Click the link below for more information:

SCOM - GSM to Azure Application Insights Migration Walkthrough (Part 1)


Thursday, January 25, 2018

Dude, where's my 'Outside-In' monitoring gone?

If you've been working with SCOM for as long as I have, you'll most likely have come across the very cool Global Service Monitor (GSM) feature that Microsoft first demonstrated way back in 2012 during the release of SCOM 2012 Service Pack 1 at the awesome Microsoft Management Summit in Vegas.


GSM simulates the end-user experience of accessing a web application as it can schedule automatic synthetic transactions from locations around the world - providing an 'Outside-In' availability, performance and reliability monitoring view of your externally facing web applications.

If you purchased a Software Assurance license for System Center 2012, then you were entitled to deploy the GSM management pack into your SCOM environments and use the Global Service Monitor connector shown in the following image to connect GSM in the cloud back into your on-premise SCOM deployment.


I've deployed GSM to a lot of customers over the years and it worked exactly as it was meant to along with adding some nice value when we were modeling IT services that needed an end-user perspective of the availability and performance of specific web applications.

Fast-forward to when SCOM 2016 was first released and although the GSM management pack guide only specified support for SCOM 2012, it still worked and delivered that 'Outside-In' monitoring experience.

Recently however, the GSM connector has stopped working for SCOM 2012 and also for SCOM 2016. If you had GSM running in your SCOM environment, you will probably have noticed an alert relating to a DNS resolution error - which on investigation looks like there's a DNS zone missing on the Microsoft side.

While no official statement has been released by Microsoft as to this connector being deprecated and this DNS issue may still be resolved, it's probably a good time to start thinking of an alternative option to GSM. This is where the Azure-based Application Insights platform comes in.

A few years back I wrote a few blog posts (here and here) that discussed an alternative to GSM when using Application Insights and last week after a discussion between a some MVP friends relating to the Global Service Monitor DNS resolution error in SCOM, Cameron Fuller (Cloud and Datacenter Management legend) put together an awesome walk-through blog post on using Application Insights as an alternative to GSM in SCOM.

Along with showing how to create a web availability test in Application Insights, Cameron also dives into some examples around custom dashboards and automatic application mapping. If you want to learn more, then I totally recommend checking out his post at the link below:

blogs.catapultsystems.com/cfuller/archive/2018/01/22/replacing-gsm-in-scom-with-application-insights/

Enjoy!


Thursday, October 23, 2014

System Center Universe Europe 2014 Presentations Now Live on Channel9.com!

The great team over at System Center Universe (SCU) Europe have just announced the availability of all the presentations that were delivered over the three day event last month up on Microsoft's Channel9.com.


I presented two sessions at the event on IP address management with Windows Server 2012 R2 and Application Performance Monitoring (APM) across your private and public clouds. Here's the links to both my presentations:


Stefan Roth has listed all sixty presentations on his blog here and for quick access to the ones you want, I've copied them all below too (you should still check out Stefan's blog for loads more cool Cloud OS info though!):

  1. Advanced Orchestrator Runbook Authoring and Management
  2. Author your own custom gallery item and deploy VM roles in Windows Azure Pack
  3. Building a Real self-service platform with SCSM, SMA PowerShell Workflows
  4. Building solid business continuity plans using System Center, Windows Server and Azure
  5. Compliance Management – the new orange in Client Management
  6. Configuration Manager 2012 R2 – a site review
  7. Creating awesome System Center Reports with PowerBI and PowerView
  8. Customer requirements first – Service Manager Customizations without limits
  9. Data Deduplication in depth
  10. Deploy the Microsoft Cloud OS in high available
  11. Deploy Windows Azure Pack across sites
  12. Disaster Recovery in a service provider cloud
  13. Disaster Recovery with Azure Site Recovery
  14. Enterprise Management Solution (EMS) – the full story
  15. How to build a service provider cloud
  16. How to deliver BaaS, RaaS and DRaaS in a modern datacenter using System Center & Azure
  17. Hybrid Cloud DevOps with APM
  18. Identity Management for Hybrid IT with Windows Azure and Windows Server 2012 R2
  19. Integrating the System Center components – your path to the galaxy
  20. Leaving the dark ages – Migrating from Configuration Manager 2007 to 2012 R2
  21. Manage your Azure through Service Manager and SMA
  22. Managing your IP Addresses the Easy Way with IPAM
  23. Microsoft Hybrid Cloud – Manage Azure with Microsoft System Center
  24. Microsoft Mobile Device Management from A to Z
  25. Multi-factor authentication for your clouds
  26. My top ten things in Windows Server 2012 R2 that will make your life easier
  27. OMI and DAL – Understanding the big picture
  28. OpsMgr Dashboards – new widgets and possibilities
  29. Optimize Azure Virtual Machines for performance and availability
  30. PowerShell’s Desired State Configuration – Resource authoring
  31. PowerShell’s Desired State Configuration – Notes from the field
  32. Self-service software provisioning with SCSM, SCORCH and SCCM
  33. Send your monitoring probes deep into unexplored space
  34. Service Management Automation – Introduction
  35. Service Management Automation (SMA) deep dive
  36. Service Manager – Performance and Scalability best practices
  37. Show me the reporting money with System Center
  38. Software Defined Networking – Comparison of different solutions
  39. Speed Lab – Deploy a Microsoft System Center 2012 R2 environment
  40. Sponsor Session OPSLOGIX & ITNETX – Conference Closing Note
  41. Sponsored Session BLUESTRIPE SOFTWARE – Using System Center and BlueStripe for dynamic application management across Azure and datacenter business applications
  42. Sponsored Session CASED DIMENSIONS – How to make Service Manager enterprise
  43. Sponsored Session CIRESON – Worldwide First – Unveiling Cireson Portal v3
  44. Sponsored Session CISCO – a Unified Data Center – Best integration for Microsoft Environments
  45. Sponsored Session COMTRADE – Deliver Citrix desktop virtualization confidently with Operations Manager
  46. Sponsored Session DERDACK – Never miss a critical IT incident again. Resolve IT incidents on-the-go. On-call duty redefined
  47. Sponsored Session MATRIX42 – Web Console for SCCM – easiness and delegation
  48. Sponsored Session NUTANIX – Automating Your Datacenter – Web-Scale Style
  49. Sponsored Session STEFFEN INFORMATIK – SCOM Manager
  50. Sponsored Session SYLIANCE IT SERVICES – Customizing System Center – Things you’ve never seen before!
  51. Sponsored Session VEEAM – Rock your Microsoft datacenter with Veeam
  52. Storage Spaces – Scale-out file server deep dive
  53. System Center Orchestrator – Runbook Design 101
  54. Unified Device Management – It’s all about the experience
  55. Upgrading to Configuration Manager 2012 R2
  56. VMware to Hyper-V Migration
  57. Welcome Note and Keynote Going beyond the borders – prepare yourself for the future!
  58. Windows Apps in the Cloud – Azure RemoteApp
  59. Windows Azure Pack – Usage Metering & Reporting Troubleshooting Guide
  60. Windows Azure Pack usage metering
So, between these sessions and the upcoming TechEd Europe ones that should be available from next week, I think I'll have enough to download to keep me occupied on the plane journey over and back to Seattle when I head to the MVP Summit in a couple of weeks!

Enjoy!

Tuesday, September 9, 2014

Just Released - Free DevOps Whitepaper - 'From Dev to the Datacenter'

Things have been pretty quiet on this blog lately due to all my spare time being taken up with some really cool projects in work, preparing for my two System Center Universe Europe presentations and putting the finishing touches to a whitepaper collaboration that I've been working on with Savision.


The new whitepaper has just been released and in it, I speak about leveraging System Center and Visual Studio Online to help you with your day-to-day 'DevOps' scenarios. Here's an abstract:

"When your critical business applications start performing badly, it’s often difficult to quickly pinpoint whether the problem lies with the infrastructure or the developers’ code. 

If you’re tired of trawling through consoles and log files full of alerts to find the root cause of a service outage, then this white-paper will show you how to leverage Microsoft’s System Center and Visual Studio Online cloud solutions to get a full 360 degree view of your applications.

With this knowledge, you’ll gain the confidence to work with your developer teams to bring a rapid conclusion to your application problems."

Targeted at both IT Pro's and Developers, the aim of this whitepaper is to bring about a better awareness of how we can use components of Microsoft's CloudOS story to help make everyone's life a little bit easier!

Interested? If so, then you can get your hands on the whitepaper here:

http://www.savision.com/free-whitepaper-dev-datacenter

When I return from System Center Universe, I'll be working with Savision to deliver two live webinars where we're going to expand a little on the topics covered in the whitepaper and we'll also give people an opportunity to get their questions answered.

Hope you like the content and if you're attending System Center Universe next week, make sure to check out my 'Hybrid Cloud DevOps with APM' presentation to see some of this cool stuff in action!

Thursday, April 3, 2014

Walkthrough of the New Microsoft Azure Dashboard

Today at the Microsoft BUILD conference in San Francisco, Microsoft announced a major update to their Microsoft Azure portal. They've added a new interactive dashboard and after I've had a chance to play around with it using my own Azure subscription, my first impression - it seriously rocks!

Here's a screenshot of what they've done:


The first thing that gets you with this portal is the vibrant colours and the different tiles - which have obviously been designed with touch compatible devices in mind.

The main tile in the middle shows a real-time health state of each of the various Microsoft datacentre's around the globe...


Clicking on this tile will open up a scrollable list of all the various Azure services and their associated health states as shown here..


The tile at the bottom-left.....


 gives you access to the Azure Gallery as shown here...


The Billing tile below gives me a good reminder of how little credit I have left to use up for my demo environments!


The new navigation bar on the left-hand side is really slick too and the Notifications link will give me information on any problems or things that need my attention as part of my subscriptions...


Clicking the 'Browse' view, you can get access to the newly announced 'Resource Groups' feature as shown here.....


Which expands out to...


One of my favourite areas of this new dashboard is it's integration with the recently released Application Insights feature of Visual Studio Online, which can be accessed from the 'Websites' option inside the 'Browse' link from the navigation bar as shown here....


This expands out to...


Scrolling down through your website information gives you more Usage data like this...


 You also get your Operational data and information from these tiles...


Note: If you want to learn more about some of the data analytics and insights behind the website tiles, then check out my step-by-step walkthrough series of deploying Application Insights in Visual Studio Online here:

 Application Insights Deep Dive Part 1 - Getting Started

Conclusion

All things considered, I think Microsoft has done an awesome job of getting these types of visualisations into Azure and as a SCOM consultant, it's this type of value-add that draws customers to the product.

I read a tweet today during the BUILD conference where someone mentioned that this new Azure dashboard makes Amazon's AWS offering look like Notepad - I have to say, on the surface of it, that sounds like a pretty good analogy!

If you like what you see and have an Azure subscription, you can give the new dashboard a test drive yourself from the following link:

http://azure.microsoft.com/en-us/

Enjoy!

Friday, March 21, 2014

Application Insights Deep Dive Part 8 - Alerting & Administration

This is the final post in my 'Application Insights Deep Dive' series and if you haven't already seen the previous posts, then you can check them all out here:

Application Insights Deep Dive Part 1 - Getting Started

Application Insights Deep Dive Part 2 - Building A Demo Server

Application Insights Deep Dive Part 3 - Deploying A Demo Web Application

Application Insights Deep Dive Part 4 - Monitoring Availability

Application Insights Deep Dive Part 5 - Monitoring Performance & Using Diagnostics

Application Insights Deep Dive Part 6 - Monitoring Usage

Application Insights Deep Dive Part 7 - Working with Dashboards

In this post I'll first show you how to configure e-mail alerting so you can be sure that you're kept in the loop in the event of any availability or performance related issues that might arise with your web applications. After that, you'll see how you can use the administration area to view any configuration changes to your applications and get quick access to keys and downloads relevant to your Application Insights account.

It's recommended that you have already worked through the demo's in my previous posts before working through the tasks in this one.

Configuring E-mail Alerts

There are two categories of e-mail alerting that you can configure within Application Insights:

Availability alerts - When you create a synthetic monitor availability test (as we did in Part 4), an e-mail alert can be configured to inform you of any problems with the test.

Performance alerts - Once performance monitoring has been configured (check out Part 5 to learn how), e-mail alerts can be fired when any of your thresholds are breached.

Like most things in Application Insights, configuring e-mail alerting is pretty easy and to get up and running for availability alerts here's what you need to do:

Open the console and browse to the Availability\Synthetic Monitors view.

Select the web application and synthetic monitor that you want to receive alerts on, then hit the edit button (the pencil icon) to open the 'Edit Synthetic Monitor' dialog box. From there, modify your alert criteria and enter a valid e-mail address to send the alerts to, then click OK. (see below):


To configure e-mail alerting for performance alerts, follow these steps:

Browse to the Diagnostics\Metrics view and choose the application that you want to get alert notification from.

Now click on the metric that you wish to receive alerts from and then hit the 'Configure Alert' button as shown below:


At the 'Edit Alerting Rule' dialog box, check the 'Alert if' box, change the rule options and then input a valid e-mail address. When you're ready, uncheck the 'Alert if' box, then hit the 'Save rule' button.

You can test e-mail alerting from your application by temporarily stopping the website in IIS and causing an availability outage (obviously only if your using a non-production application for testing). In a short few minutes, you should then receive an 'Alert Activated' e-mail similar to this...


Clicking the 'View Online' links from inside this e-mail will open up a scoped view of your Application Insights console to help you quickly understand the resultant issue.

When the issue is resolved, you'll then receive an 'Alert Resolved' e-mail like this one..


I think the simple visualisations in these 'Alert Activated' and 'Alert Resolved' e-mails are very useful and easy to quickly consume the status of your application - especially if you're using Application Insights in tandem with SCOM or another monitoring solution and are getting a number of e-mail alert notifications into your inbox on a daily basis.

The Administration Area

If you want to edit your alerting rules, then you can do this from within the Administration area by clicking on the 'Administer account' option (gear icon) in the top right of the Application Insights console as shown below..


Click on the 'Alerting Rules' tab and you will see all of the alert rules that have been configured for your selected application. From this view, you can then highlight an alert rule and hit the 'Configure Alert' button to get quick access for changing alert thresholds and e-mail addresses.


If you want to carry out wholesale batch updates of your alert rules, then this can be achieved by downloading a configuration file from the 'Configuration History' tab, making your changes to the file, then uploading it again to refresh the configuration and alert rules to reflect your changes.

Here's what the Configuration History tab of my application looks like....


You'll notice the Upload Configuration and Download Configuration options and if you click the Download one, you'll be presented with an XML file that contains your configuration and alert rules. If you open this file you'll find all synthetic monitors contained in the <SyntheticMonitors> section and your alert rules located in the <Rules> section as shown here..


If you want to get quick access to all of the relevant tools, agents, instrumentation keys and configuration samples, then click on the 'Keys & Downloads' tab of the Administration Area. Here, you can scroll through a centralised list of everything you need - including Java agents like the example in this screenshot:


Additional Resources

If you like what you see in my series of posts, you can get more information on Application Insights from the following Channel 9 videos that Microsoft's Charles Sterling (aka AI ninja) has put together to help give everyone an understanding of what it can do:

You can post questions and get answers for all your Application Insights problems on the TechNet forum here:

http://social.msdn.microsoft.com/Forums/en-US/home?forum=ApplicationInsights

Also, you can have a read through all of the available MSDN documentation on Application Insights here:

http://msdn.microsoft.com/en-us/library/dn481095.aspx


Conclusion

This wraps up my 'Application Insights Deep Dive' blog series and hopefully, if you've been working through all the demo's and examples over the past eight posts, you'll now have a far better understanding of what this really cool new offering can do. Although it's just in its infancy in terms of a mature solution, I'm expecting big things for this over the coming year or two and it really does feel to me like it's the next generation of Microsoft's monitoring platform.

Thursday, March 20, 2014

Application Insights Deep Dive Part 7 - Working with Dashboards

This penultimate post is Part 7 of my 'Application Insights Deep Dive' series and if you haven't yet read over the previous posts, then you can check them all out here:

Application Insights Deep Dive Part 1 - Getting Started

Application Insights Deep Dive Part 2 - Building A Demo Server

Application Insights Deep Dive Part 3 - Deploying A Demo Web Application

Application Insights Deep Dive Part 4 - Monitoring Availability

Application Insights Deep Dive Part 5 - Monitoring Performance & Using Diagnostics

Application Insights Deep Dive Part 6 - Monitoring Usage

In the last post we covered how to monitor your end user/visitors usage data to understand how they were accessing your applications and from which types of environments.

For this post, I'll walk through creating custom dashboards that can be pinned to a 'Favorites' area where all the data that is of interest to you is centralised and easily accessible. I'll also cover how to share dashboards and make some changes to existing ones as required.

Using the Dashboard Templates

Logon to Visual Studio Online, open the Application Insights console and browse to the 'Overview\Dashboards' view as shown below.


Now click on the green '+' symbol to open up the 'Create Dashboard' dialog box. From here, you will be presented with four different types of dashboard templates to use (Blank, Default Application, Default Developer & Agent Instrumented Application dashboards).


For this first example, we'll choose the 'Agent instrumented application dashboard' template. When you've made your choice, give the new dashboard a friendly name and then select the web application that it will apply to from the 'Application' drop-down list as shown below (we'll select our Fabrikam web application that we created earlier in this series of posts) and click 'Create Dashboard'.


This will create a new dashboard that is pre-populated with tiles and graphs containing data about your monitored web application.


Each of these tiles and graphs contain live data and they can be individually clicked on to navigate directly to scoped application views inside the Application Insights console. For example, if you click on the 'Exception Events' tile, you'll be brought to the Diagnostics\Events view for your specified application like this...


Back at the Overview\Dashboards view, if you want to edit the layout of your newly created dashboard, then no problem - it's pretty simple to add, modify or remove any of the data graphics that you see.

The first thing you need to do is to select your dashboard from the 'My Dashboards' section in the navigation bar, then click the 'Edit' button (the blue pencil icon shown below)

Now, let's say I wanted to rename my dashboard. All I need to do in editing mode is to click on the dashboard name and modify it as I wish.


Next, I might want to remove the 'Config Changes' tile. To do this, I click on the tile (still in edit mode) and you'll notice that there are three new icons on the corners of your selected tile..


Hover your mouse pointer over each one and you'll find that the top right icon is used to 'Remove', then bottom right icon is used to 'Resize' and the bottom left icon is 'Configure tile'. Click the 'Remove' icon and your chosen tile (Config Changes for me) is now gone!

Now I want to resize my 'Active Alerts' tile to fill in the blank space made by my removed tile so I'll select the tile, then hit the 'Resize' icon to give me a view like this..


To add a new tile to the 'App Metrics' section that contains multiple metrics in the same tile, click the 'Metrics' option from the top bar, then choose 'Multi-metric tile' as shown below.


This creates a new blank tile with no data inside and you can simply drag and drop it into location under the App Metrics section like this..


Click the 'Configure tile' icon down the bottom left to open the 'Configure Tile - Multiple Metric' window. From there, choose your web application from the 'Applications' drop-down menu, then click on the metrics that you want to add to the dashboard from the 'Metrics' list (as below).


Now if you click on the 'Chart' link from this same view, you should see your chosen metrics listed and the colours that they will represent in the tile.Choose your colour of preference for the metrics here.


Click on the 'Options' link to modify properties like the name, subtitle, vertical axis, colour of the dashboard and time interval. I'm going to change the dashboard colour here to make it stand out and also I'll specify that it has a time range of one week.


Hit the 'Save Configuration' button when you're happy with your changes and you should see a new tile added to the template similar to this...


When you've finished editing your new dashboard, hit the 'Save' button (which is the floppy disk icon under the dashboard name) to end the process. Your new dashboard with the modified tiles and graphs will look similar to the one below..


Creating a Dashboard From Scratch

Most of the time, using the pre-built dashboard templates will be sufficient for you to design the type of dashboards that you need, but there might be a requirement for you to just start with a blank canvas and build out your own tiles and graphs as you see fit. This is a good option if you have applications that are being monitored without the Microsoft Monitoring Agent (MMA) deployed.

To do this, you'll need to use the 'Blank dashboard' template...


Clicking on the 'Create Dashboard' button will open up a brand new but completely empty dashboard for you to work with. Click the 'Quick Glance' link and choose an option from the resulting menu (we'll go with Availability for this example).


This will create a new Availability tile with no configuration. Resize it as required, then click the 'Configure tile' icon.

Choose the application and synthetic monitor that you wish to add to the dashboard, then click the Options link to modify the name and the colour of the tile and also the time interval.



Repeat this procedure using the 'Quick Glance' and 'Metrics' links to create and customise other tiles until eventually you have the custom dashboard that you are looking for (see below for the quick one I've put together).


You can also use the 'Pin to Dashboard' link when you're browsing through metrics data to add the metric tile to your chosen dashboard as shown here.


Enter your dashboard level and target dashboard.


Here's the metrics tile now added to your chosen dashboard...


Sharing Dashboards

With Visual Studio Online (VSO) and depending on the type of subscription you have signed up for, you can create additional users for your team members to work with all aspects of  VSO - including of course, Application Insights. The basic (and free) version of Visual Studio Online that I'm using for this blog series allows for up to five free users before you need to pay a monthly fee depending on the number of additional users over five that you require.

Regardless of the number of users you have, if there's more than just yourself accessing Application Insights, you might well want to share your dashboards with those additional users and to do this is pretty simple.

To share a dashboard that you've created, click on the drop-down arrow beside your dashboard's name, then choose the 'Move to shared dashboards' option as shown below.


Once the dashboard is moved, any user with access to your Visual Studio Online account can easily view the dashboard from the 'Shared Dashboards' link as you can see from the screenshot.


Creating and Sharing Favorites

If you've created a large number of dashboards, you might want to save some of them as favorites for quick access and viewing and this is easily achieved by clicking on the drop-down arrow beside the dashboard name and this time, choosing the 'Add to my favorites' option as shown.


If you want to share some of your dashboards as favorites (maybe you're the only one that creates the dashboards and then everyone else just consumes them from a shared favorites lists), then from the 'Shared Dashboards' section, click the drop-down arrow beside your shared dashboard and choose the 'Add to shared favorites' option as below.


So that pretty much wraps up this post on dashboards. In Part 8 (which is the final post in the series), I'll go through some of the options for email alerting, configuration and additional resources.