需要列出 WMI 性能监控类的资源

需要列出 WMI 性能监控类的资源

是否有人有列出 WMI 查询语言调用的性能监控类的资源链接?我有一些可以通过 WMI 提取数据的监控软件,但我必须使用 WMI 查询语言 (WQL) 输入查询。以下是示例:

从 Win32_PerfFormattedData_PerfDisk_logicalDisk 中选择 AvgDiskQueueLength,其中 Name="_Total"

所以我了解语法,但我正在尝试找出不同的类别,特别是一些 MS SQL 类别。我尝试使用 Scriptomatic 工具探索 SQL 服务器 WMI 信息,但没有任何与 SQL 服务器相关的信息。

服务器操作系统是Windows 2003,运行MS SQL Server 2000。

答案1

您可以使用 PowerShell 列出命名空间中的类。

get-wmiobject -list

将列出默认(“ \root\cmiv2”)命名空间中的所有类,该-namespace参数可用于指定不同的命名空间。

要获取所有性能类别,请使用以下任一方法:

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

对于原始数据,或者:

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

用于格式化数据。Perfmon显示格式化的数据(按计数器类型处理),原始数据是性能计数器提供程序发送的,无需任何进一步处理。

答案2

以下是我的方法...

  1. 开始 -> 运行“wbemtest.exe”
  2. 连接,将命名空间更改为“root\cimv2”,连接
  3. 点击枚举类,输入超类名称“Win32_PerfFormattedData”,确定

现在应该会显示该机器上的所有 perfmon WMI 类。从那里您可以编辑这些类并查看每个属性。

答案3

MSDN 有最好的 WMI 类别列表,但追踪它们可能很困难。

SQL2005 课程在这里。但是,据 Microsoft 称,“SQL Server 2000 未预安装 WMI Admin Provider。需要使用 SQL Server 2000 安装 CD 中 x86\other\wmi 文件夹下提供的 WMI Admin Provider Setup 单独安装它。”安装后,它似乎使用与 SQL2005 相同的类。

此链接指向 Server 2003 WMI 参考。它包括 WMI ODBC 适配器功能的 SQL,并应为您提供您感兴趣的任何非 SQL 类。

答案4

可能来自脚本专家网站:

strComputer = "."

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colClasses = objWMIService.SubclassesOf()

For Each objClass in colClasses
    For Each objClassQualifier In objClass.Qualifiers_
        If LCase(objClassQualifier.Name) = "dynamic" Then
            WScript.Echo objClass.Path_.Class   & ": " & _
                         objClassQualifier.Name & "="  & _
                         objClassQualifier.Value
        End If
    Next
Next

我使用这个脚本来检查或排除特定计算机上可用的课程故障。

相关内容