No-cost analytics accelerate successful upgrade to Windows 10

Do you need a plan to upgrade perhaps thousands of client computers to Windows 10 in the next year? Microsoft makes available an enormously useful Azure-based tool to help organizations plan a Windows 10 migration that is free to use in most scenarios: Upgrade Readiness.

Why it’s important: Many organizations must execute Windows 7 upgrades to Windows 10 in the next year to avoid the January 2020 end of life for Windows 7. Even at this late date many enterprise helpdesks are struggling with a timeline to phase-out Windows 7. The Upgrade Readiness solution helps organize and prioritize an otherwise overwhelmingly large amount of data into a manageable project. If you have Microsoft System Center Configuration Manager (SCCM), the solution integrates with SCCM before and during the migration project.

Why it’s cool: This is a lightweight, data-driven, agentless, and free solution powered by Windows Telemetry and Azure Log Analytics—a ‘modern Microsoft client management stack‘! You configure telemetry in the client computers’ Windows OS via a PowerShell script to stream data into Azure storage. The Upgrade Readiness solution is one of three (3) Windows Analytics solutions available so far that use this modern approach, the others are Device Health and Update Compliance. The solution helps you make informed decisions on what app and driver issues to work on to maximize overall success of an upgrade project.

Upgrade Readiness is Free to Azure Subscribers

Azure Log Analytics Upgrade Readiness is a free solution for Azure subscribers. You add the Upgrade Readiness solution to an Azure Log Analytics workspace. Create a new empty workspace if you don’t have one in your Azure subscription yet.

When configured correctly, all data associated with the Upgrade Readiness solution are exempt from billing in Azure Log Analytics. Upgrade Readiness data do not count toward Azure Log Analytics daily upload limits. The Upgrade Readiness service will ingest a full snapshot of your data into your Log Analytics workspace daily. Each snapshot includes all your devices that have been active within the past 30 days regardless of your Log Analytics retention period.

Using the Upgrade Readiness Solution

This article will start off with showing the solution in operation. If you are interested, keep reading for technical tips and the steps to deploy the solution in your environment.

Figure (1) shows in the upper left the dashboard summary tile for the solution in the Log Analytics workspace. Clicking on the tile opens the portal blade shown on the right.

Figure 1 – (Upper left) The overview tile for the Upgrade Readiness solution, (Right) Overview blade in the solution.

The Upgrade Overview blade as seen in the right side of Figure (1) summarizes how close you are to being ready to upgrade all your client computers to Windows 10.

The solution is organized in cascading blades that, from left to right, segregate computers by how ready they are to upgrade to Windows 10. Figures (2) and (3) shows off about half the analysis blades in the solution. There is a lot more data available, but these screenshots demonstrate how the solution helps you progress computers along a workflow that leads to successful upgrades.

Figure 2 – Step 1 in the solution help you identify apps on computers to upgrade, Step 2 helps manage app and driver issues that could block upgrade.


Figure 3 – Step 3 slots computers in groups when they are ready to upgrade, Step 4 tracks the progress of your overall upgrade project.

The intelligence in the Upgrade Readiness solution helps you achieve this business goal: Spend your time on issues that impact the largest number of computers. Without this data, you can get bogged down in individual application and driver issues that make project timelines difficult to estimate reliably. With the data, you know the valuable time of your helpdesk team is going to the best use—making the highest number of computers ready to upgrade. The solution helps you identify issues and prioritize work assignments that will clearly achieve your overall upgrade project goals.

Windows Telemetry and how it gets into your Azure Log Analytics workspace

The Windows 10 telemetry feature set, enabled by default, periodically sends usage and performance data to the Microsoft Data Management Service in the Azure cloud. This data is associated with the Windows Customer Experience Improvement Program (CEIP). Windows 7 and Windows 8.1 (via KB2952664 and KB2976978 mandatory Critical Updates) also stream telemetry data to Microsoft. Here is what a telemetry packet from a Windows 7 computer, reporting ‘ready to upgrade’, looks like going to Azure storage:

7/17/2018 3:00:00.000 AM | UAHardwareSecurity

…TimeGenerated:7/17/2018 3:00:00.000 AM







…WinSecurityFixEnabled:Installed, but mitigation status unknown


…AVStatusOnTarget:No known issues

…WinSecurityTarget:February 13, 2018


When you deploy the solution, telemetry events from your computers are tagged with a “Commercial ID” you associate with your Azure Log Analytics workspace. The commercial ID is one of the settings in the PowerShell script deployed to client computers in this solution. As shown in Figure (4), the Microsoft Data Management Service sorts out the telemetry messages with your commercial ID and makes them available for query search and alerting/automation actions in the Azure Log Analytics workspace.

Figure 4 – How Windows telemetry data appears in the Upgrade Readiness solution

Add the Upgrade Readiness solution to your Azure subscription

Follows steps 1 to 5 at this reference:

After you add the solution to your Log Analytics workspace, navigate to Solutions -> CompatibilityAssessment -> Upgrade Readiness Settings where you will find your Commercial Id Key as seen in Figure (5). You use this key to configure your client computers in the solution.

Figure 5 – Finding the Commercial Id Key associated with your Log Analytics workspace


Configure and deploy Upgrade Readiness deployment script

Download the latest version of the Upgrade Readiness deployment script ( at this link:

You will find Pilot and Deployment branches of the script. The Pilot version is for testing and validation of the solution in your organization. The Deployment version is for broad distribution of the script. Here are the simple high-level steps to get going:

  1. Download and extract
  2. Decide which version of the script (Pilot or Deployment) you should be using.
  3. Edit parameters in RunConfig.bat to include the Commercial ID Key for your Log Analytics workspace.
  4. Run RunConfig.bat as an administrator (for Pilot version) or via SCCM or other software deployment system (for Deployment version).

Upgrade Readiness with Configuration Manager

If you have System Center Configuration Manager (SCCM) up and running, it’s a no-brainer to connect SCCM to the Update Readiness solution. A complete reference is here: Figure (6) shows the Monitoring -> Upgrade Analytics view in the SCCM console when connected to the Upgrade Analytics solution.

Figure 6 – Bringing Upgrade Readiness solution intelligence into the SCCM console.

You can make dynamic SCCM collections based on analytics from the Upgrade Readiness solution, this link tells you how: The idea is that when Upgrade Readiness queries identify computers ready to upgrade or needing specific remediation, you can have computers progress to the next upgrade stage fully ‘hands off’.

Tags: #MVPBuzz #Windows10 #SCCM #Azure #AzureLogAnalytics #UpgradeReadiness #netadmin #sysadmin #winserv


Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.