Need a resource that lists WMI perfmon classes

5,032

Solution 1

Here's how I do it...

  1. Start -> Run "wbemtest.exe"
  2. Connect, change Namespace to "root\cimv2", Connect
  3. Hit Enum Classes, enter superclass name "Win32_PerfFormattedData", OK

All perfmon WMI classes on that machine should now be displayed. From there you can edit the classes and see what each property is.

Solution 2

You can use PowerShell to list classes in a namespace.

get-wmiobject -list

will list all classes in the default ("\root\cmiv2") namespace, the -namespace parameter can be used to specify a different namespace.

To get all the performance classes, use either:

get-wmiobject -list | ?{$_.Name -like 'Win32_PerfRaw*'}

for raw data, or:

get-wmiobject -list | ?{$_.Name -like 'Win32_PerfForm*'}

for formmater data. Perfmon shows formatted data (processed by counter type), raw is what the performance counter provider is sending without any further processing.

Solution 3

MSDN has the best list for WMI classes, but it can be difficult to track them down.

The SQL2005 classes are here. However, according to Microsoft, the "WMI Admin Provider is not pre-installed for SQL Server 2000. It needs to be installed separately using the WMI Admin Provider Setup available along with the SQL Server 2000 Setup CD under x86\other\wmi folder." Once installed it appears to use the same classes as SQL2005.

This link is to the Server 2003 WMI reference. It includes the SQL for the WMI ODBC Adapter functions, and should provide you with any nonSQL classes you are interested in.

Share:
5,032

Related videos on Youtube

David Yu
Author by

David Yu

Apple II clone Beltron 8088 DTk 286 386SX-16 486DX-33, upgraded to 66 Novell Netware 3.1 Pentium 60 Microsoft NT 3.0 Pentium III 600 AMD Athlon 800 Pentium 4 3.0GHz Centrino Duo

Updated on September 17, 2022

Comments

  • David Yu
    David Yu almost 2 years

    Does anyone have links to resources that list perfmon classes that are called by the WMI Query Language? I have some monitoring software that can pull data via WMI but I have to enter a query in WMI Query Language (WQL). Here is an example:

    SELECT AvgDiskQueueLength FROM Win32_PerfFormattedData_PerfDisk_logicalDisk WHERE Name="_Total"

    So I have an idea of the syntax but I'm trying to figure out the different classes, specifically some of the MS SQL ones. I've tried using the Scriptomatic tool to explore the SQL server WMI info but there isn't anything related to the SQL Server.

    The server OS is Windows 2003, running MS SQL Server 2000.

  • Thomas B in BDX
    Thomas B in BDX over 9 years
    And to list the other namespaces: Get-WmiObject -Class __NAMESPACE -Namespace root | select Name