SetupDiag is a free diagnostic tool by Microsoft that is designed to find and parse Windows 10 setup log files to determine why an upgrade or update failed to install on a computer system.
The program can be run on the computer that failed to upgrade or on another computer if relevant log files are available (for example, by copying them to the PC).
SetupDiag works only on devices running Windows 10. The second requirement is that it depends on the Microsoft .NET Framework 4.6 which needs to be installed on the device it is run on.
With the upcoming Windows 10 version 1803 just around the corner, it may be the right tool to have in your arsenal if you run into upgrading issues.
You can run SetupDiag directly after download. If you run it without parameters, it attempts to locate log files that Windows 10 creates during the upgrade process in the default folders on the device.
The program creates a results.log file in its directory when it completes the scan which includes upgrade issues that it detected in the log files during parsing.
SetupDiag creates a zip archive of all log files that it processed on top of that which it saves as Logs.zip in the same directory as well.
The command line window lists those as well, but the window is closed automatically when the program finishes the scan.
Check out our list of Windows 10 upgrade log files to find out more about those. Basically, what SetupDiag does is parse the following directories for log files:
You may run the application in offline mode to parse folders copied from another device. The tool parses one folder only if you copy individual folders, but if you copy the parent folder, it will include all logs found in all directories of the directory structure.
SetupDiag can also be used to debug minidump files that Windows 10 may create during the upgrade process. Windows 10 creates the file setupmem.dmp either in %SystemDrive%$Windows.~bt\Sources\Rollback or in %WinDir%\Panther\NewOS\Rollback depending on when the upgrade process is stopped.
Here are some examples:
How it works
SetupDiag uses a set of rules files to find matches in upgrade logs. Rules have a name and associated unique identifier.
The reliance on rules means that SetupDiag can only identify issues that are defined in its set of rules. Microsoft lists a total of 26 unique identifiers on the Microsoft Docs website which SetupDiag identifies in its current version.
If the program fails to find the root cause for the upgrade issue, check out our how to analyze Windows 10 upgrade errors guide which offers information on diagnosing issues manually.
SetupDiag may speed up the diagnosing of upgrade related issues on Windows 10 machines significantly. It reduces the time it takes to parse the log files but may still require additional research to repair the detected issue.
Some issues, like not enough disk space, are easy enough to fix but others may require extensive research and repair operations.
Now You: Did you run into Windows 10 upgrade errors in the past?
Advertising revenue is falling fast across the Internet, and independently-run sites like Ghacks are hit hardest by it. The advertising model in its current form is coming to an end, and we have to find other ways to continue operating this site.
We are committed to keeping our content free and independent, which means no paywalls, no sponsored posts, no annoying ad formats or subscription fees.
If you like our content, and would like to help, please consider making a contribution:
Ghacks is a technology news blog that was founded in 2005 by Martin Brinkmann. It has since then become one of the most popular tech news sites on the Internet with five authors and regular contributions from freelance writers.