WMI: WMI Service Failure


WMI: WMI Service Failure


Description: Failures with the Windows Management Instrumentation (WMI) service are rare and it can be difficult to discern when having a WMI issue whether a problem is due to an issue with a client application or script utilizing WMI, the WMI service, a WMI provider and/or the object being managed by WMI. If an issue is found to be with Microsoft WMI service itself, support for it will be provided by the Microsoft Platforms Performance support team.

Scoping the Issue:  As mentioned previously, it is important to identify the components involved in the WMI issue. If the root of an issue is a failure with the WMI service then it will affect any client application or script that attempts to utilize WMI. This is also true for any WMI provider utilized on the system. To determine basic WMI service functionality it is necessary to perform a few basic queries using some of the default WMI classes to note whether correct results are obtained. If expected results are returned then the WMI service may not be failing. If the queries fail then the service may be failing.

When performing the tests, the WMI testing utility (WBEMTEST.EXE) that comes with Windows can be used to perform various queries and actions. There are many default providers that come with the various versions of Windows operating systems. These and the classes that they present are outlined in the following on the Microsoft MSDN site.

WMI Providers:
http://msdn.microsoft.com/en-us/library/aa394570(VS.85).aspx

WMI Classes:
http://msdn.microsoft.com/en-us/library/aa394554(VS.85).aspx

Try the following tests on the target machine to see if problems exist which may indicate a WMI service issue:


  • Test the Win32 class provider using the WBEMTEST utility:


  1. Click START and then RUN and enter WBEMTEST.EXE

  2. From the WBEMTEST utility, choose the CONNECT button and enter “root\cimv2” in the Namepsace box.

  3. Click the CONNECT button to connect to the namespace

  4. At the parent screen, click the QUERY button and then enter “SELECT * FROM WIN32_PROCESSOR” in the Enter Query box.

  5. Click the APPLY button to execute the query and note whether the number of processors on the system are returned once the query completes.


  • Test the Active Directory provider using the WBEMTEST utility:


  1. Click START and then RUN and enter WBEMTEST.EXE

  2. From the WBEMTEST utility, choose the CONNECT button and enter “root\directory\ldap” in the Namepsace box.

  3. Click the CONNECT button to connect to the namespace

  4. At the parent screen, click the QUERY button and then enter “SELECT * FROM DS_LDAP_CLASS_CONTAINMENT” in the Enter Query box.

  5. Click the APPLY button to execute the query and note whether information is returned once the query completes.

NOTE: the query may take a few minutes to complete.

Data Gathering:  Gathering the following data is helpful to help troubleshoot issues related to WMI service issues:


  • Run the WMIDIAG utility on the problematic target machine.

NOTE: You must be a full administrator to run the WMI Diagnosis Tool.


1. Download the WMI Diagnosis Utility — Version 2.0 –


http://www.microsoft.com/downloads/details.aspx?familyid=d7ba3cd6-18d1-4d05-b11e-4c64192ae97d&displaylang=en



2. Create a folder at the root of a drive to store WMIDIAG, for example:



    C:\WMIDIAG



3. Download wmidiag.zip to the newly created folder and unzip contents.



4. Open a command prompt and navigate to the folder containing the WMIDIAG files.



5. At the prompt, execute WMIDIAG by running the following command:



    CSCRIPT WMIDIAG.VBS



6. The WMI Diagnosis Tool should complete within 15-20min and creates three files in the %TEMP% directory:



    .LOG file



    .TXT file



    .CSV file


NOTE: More information on the diagnostic utility is available at:

http://www.microsoft.com/technet/scriptcenter/topics/help/wmidiag.mspx


  • Configure WMI Verbose logging on the machine via the WMI Management snap-in:


1. Click START and then RUN and enter WMIMGMT.MSC



2. Right click on WMI Control (local) and select PROPERTIES



3. Select the LOGGING tab, and change the Logging Level to verbose



4. Set the Maximum Size value to 26214400



5. Click Ok

 



  • Run the MPSReports data gathering utility on the machine:


1. For 64bit systems, download and save the reporting tool to your local hard drive:


http://download.microsoft.com/download/f/0/4/f047169c-6357-47f3-835c-2665d6426e66/mpsrpt_pfe.exe


2. Double click ‘MPSRPT_PFE.EXE’ to run the program. When a command window opens you will be asked to press ‘Y’ or ‘N’. Press the letter ‘Y’ on your keyboard. No further interaction is required



3. The .CAB file is saved to C:\Windows\MPSReports\PFE\cab



1. For 32bit systems, download and save the reporting tool to your local hard drive:


http://download.microsoft.com/download/b/b/1/bb139fcb-4aac-4fe5-a579-30b0bd915706/MPSRPT_SetupPerf.exe


2. Double click ‘MPSRPT_SetupPerf.EXE’ to run the program. When a command window opens you will be asked to press ‘Y’ or ‘N’. Press the letter ‘Y’ on your keyboard. No further interaction is required



3. The .CAB file is saved to C:\Windows\MPSReports\Setup\Reports\cabMPS Reports


Additional Resources: