MSExchangeAL Performance Counter - WMI sample in VBScript

The foundations for Manageability in Windows 7/2008/Vista/XP/2000 and Millennium Edition/'98 are Windows Management Instrumentation (WMI; formerly WBEM) and WMI extensions for Windows Driver Model (WDM).

ActiveXperts Network Monitor provides the ability to build monitor check routines based on WMI. ActiveXperts has collected more than a hundred WMI samples. You can use these samples as a base for new check routines you can write yourself.

On this site, you can find many WMI samples.

The MSExchangeAL Performance Counter WMI class can be used in ActiveXperts Network Monitor to monitor your servers.

MSExchangeAL Performance Counter


The Recipient Update Service (RUS) plays a crucial role in the day-to-day operations of Exchange 2000 because it is responsible for keeping e-mail addresses and membership of address lists up to date. You should measure the Address List Queue Length when examining the RUS:


On Error Resume Next
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_PerfRawData_MSExchangeAL_MSExchangeAL",,48)
For Each objItem in colItems
    Wscript.Echo "ActiveAddressListThreads: " & objItem.ActiveAddressListThreads
    Wscript.Echo "ActiveRecipientThreads: " & objItem.ActiveRecipientThreads
    Wscript.Echo "AddressListModifications: " & objItem.AddressListModifications
    Wscript.Echo "AddressListsQueueLength: " & objItem.AddressListsQueueLength
    Wscript.Echo "Caption: " & objItem.Caption
    Wscript.Echo "Description: " & objItem.Description
    Wscript.Echo "Frequency_Object: " & objItem.Frequency_Object
    Wscript.Echo "Frequency_PerfTime: " & objItem.Frequency_PerfTime
    Wscript.Echo "Frequency_Sys100NS: " & objItem.Frequency_Sys100NS
    Wscript.Echo "LDAPModifycalls: " & objItem.LDAPModifycalls
    Wscript.Echo "LDAPModifycallsPersec: " & objItem.LDAPModifycallsPersec
    Wscript.Echo "LDAPModifyfailures: " & objItem.LDAPModifyfailures
    Wscript.Echo "LDAPModifyfailuresPersec: " & objItem.LDAPModifyfailuresPersec
    Wscript.Echo "LDAPResults: " & objItem.LDAPResults
    Wscript.Echo "LDAPResultsPersec: " & objItem.LDAPResultsPersec
    Wscript.Echo "LDAPSearchcalls: " & objItem.LDAPSearchcalls
    Wscript.Echo "LDAPSearchcallsPersec: " & objItem.LDAPSearchcallsPersec
    Wscript.Echo "Name: " & objItem.Name
    Wscript.Echo "RecipientModifications: " & objItem.RecipientModifications
    Wscript.Echo "RecipientsPersec: " & objItem.RecipientsPersec
    Wscript.Echo "RecipientsQueueLength: " & objItem.RecipientsQueueLength
    Wscript.Echo "Timestamp_Object: " & objItem.Timestamp_Object
    Wscript.Echo "Timestamp_PerfTime: " & objItem.Timestamp_PerfTime
    Wscript.Echo "Timestamp_Sys100NS: " & objItem.Timestamp_Sys100NS