Microsoft has unfortunately changed the method to review Windows Update log files. In the past we had simple log file in C:\Windows. But in the newer versions Microsoft has chosen to replace this with a new PowerShell cmdlet. When we use this cmdlet on a server without internet connection this may result in error messages, such as no format information found.
You can get the no format information not found error when using Get-WindowsUpdateLog on a Windows Server system. The error messages look similar to this:
This is due to the absence of an internet connection on the specific server. The Get-WindowsUpdateLog command relies on a Microsoft symbol server which is located on the internet. Luckily there is a workaround, we will describe this workaround in this post.
Pro tip: this post relies on basic Windows PowerShell skills. I can highly recommend O’reilly’s PowerShell cookbook to improve your basic PowerShell skills.
The solution
First get the folder C:\Windows\Logs\WindowsUpdate and copy it to a server with internet access. We moved these logs to C:\temp in this example. After moving the files to a different server, run the following command on the destination server:
Get-WindowsUpdateLog -etlPath C:\temp\WindowsUpdate\
Notice how we gave the PowerShell cmdlet ‘Get-WindowsUpdateLog’ the extra parameter etlPath, in order to specify where our ETL log files are located. After you have ran the above command. A WindowsUpdate.log will be placed on the current users desktop. You can also optionally specify the output location of the log file using the -logPath parameter. For example:
Get-WindowsUpdateLog -etlPath C:\temp\WindowsUpdate\ -logPath C:\temp\
The other solution is to get internet access on the specific server, but this often not allowed due to security requirements. I hope the above helps you resolve the format information not found error. As always Microsoft does provide some good documentation on the use of this PowerShell cmdlet. This specific information can be found on the Microsoft website.