This discussion has been locked. The information referenced herein may be inaccurate due to age, software updates, or external references.
You can no longer post new replies to this discussion. If you have a similar question you can start a new discussion in this forum.

Win32_PerfRawData_PerfProc_Process - Invalid Class

For much longer than I care to admit I was struggling to monitor any Windows services using WMI on one of my Windows 2008 Servers. Instead I received the dreaded "Invalid Class" error in the APM info window. This was later confirmed using WBEMTEST. When using WMI Explorer it was clear to see that the "Win32_PerfRawData_PerfProc_Process" class did not exist. 

I opened a case with Solarwinds support and was directed to their WMI support document and related online documentation. Unfortunately none of the information provided proved useful in this circumstance.

I spent a several hours googling around and was able to find several others with my issue, but no one had found a solution. With nowhere else to go, I spent the $250.00 and called Microsoft Support. It took a few days, and at least three Microsoft support engineers later that we finally got to the root of the problem. I knew from the very beginning that this was going to be something stupid, but I never realized just how obscure the problem would be, so I decided to save others my pain and post my resolution in hopes that others might find it useful in the future. 

We went into registry “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\PerfProc\Performance” In the right hand pane we found that “Disable Performance Counters” was set to 1, which means it was disabled. We used “exctrlst.exe” tool, enabled ‘perfproc’ and rebooted. After Rebooting we were able to run the WMI query (SELECT * from Win32_PerfRawData_PerfProc_Process where NAME <> '_Total') using the WBEMTEST tool built into Windows. After verifying with WBEMTEST I confirmed that APM was properly polling my monitored services properly. 

I hope someone else finds this helpful.

Parents Reply Children
  • I'm now battling this same issue on one of our Server 2008 boxes. We migrated from a 2k3 server to 2k8 and thats when the WMI monitors stopped working. I've gone through the SolarWinds document and checked all the permissions and reset WMI with the winmgt commands.

    I looked in the registry for the key mentioned above, but it is not there. Any ideas where it would be?

  • I am having the same issue and can't find the key mentioned, did you ever get a fix for this?

  • Have you tried using the “exctrlst.exe” tool mentioned above?

    If you're unable to find the PerfProc\Performance Registry Key that might be your problem. I recommend exporting and importing this registry key from a known good/working Windows server. Below is an export from mine. Simply copy/paste into Notepad and save it as perfproc.reg. Then copy the file to the affected server, double click on it to import the changes, and then reboot.

    Windows Registry Editor Version 5.00

    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\PerfProc\Performance]

    "Close"="CloseSysProcessObject"

    "Collect"="CollectSysProcessObjectData"

    "Collect Timeout"=dword:00001f40

    "Library"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,\

      74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,70,\

      00,65,00,72,00,66,00,70,00,72,00,6f,00,63,00,2e,00,64,00,6c,00,6c,00,00,00

    "Object List"="230 232 786 740 816 1408 1500 1548 1760"

    "Open"="OpenSysProcessObject"

    "Open Timeout"=dword:00002710

    "1023"=hex(b):9c,7a,d0,89,14,ab,ce,01

  • Exported and Imported the keys from working server and RESTARTED only the Windows Management Instrumentation Service (not the server), it worked like a charm. [Issue faced on Windows 2008] without R2.

    Exported keys from Windows 2008 R2 server which was working fine.

    Final Registry screen of working keys.

    pastedImage_0.png