Win32_PerfRawData_ASP perl sample code
The foundations for Manageability in Windows is 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. The Win32_PerfRawData_ASP WMI class can be used in ActiveXperts Network Monitor to monitor your servers.
Sample Code
use Win32::OLE('in'); my $computer = "."; my $objWMIService = Win32::OLE->GetObject("winmgmts:\\\\$computer\\root\\CIMV2") or die "WMI connection failed.\n"; my $colItems = $objWMIService->ExecQuery("SELECT * FROM Win32_PerfRawData_ASP_ActiveServerPages", "WQL"); foreach my $objItem (in $colItems) { print "Caption: $objItem->{Caption}\n"; print "DebuggingRequests: $objItem->{DebuggingRequests}\n"; print "Description: $objItem->{Description}\n"; print "EngineFlushNotifications: $objItem->{EngineFlushNotifications}\n"; print "ErrorsDuringScriptRuntime: $objItem->{ErrorsDuringScriptRuntime}\n"; print "ErrorsFromASPPreprocessor: $objItem->{ErrorsFromASPPreprocessor}\n"; print "ErrorsFromScriptCompilers: $objItem->{ErrorsFromScriptCompilers}\n"; print "ErrorsPerSec: $objItem->{ErrorsPerSec}\n"; print "Frequency_Object: $objItem->{Frequency_Object}\n"; print "Frequency_PerfTime: $objItem->{Frequency_PerfTime}\n"; print "Frequency_Sys100NS: $objItem->{Frequency_Sys100NS}\n"; print "InMemoryTemplateCacheHitRate: $objItem->{InMemoryTemplateCacheHitRate}\n"; print "InMemoryTemplateCacheHitRate_Base: $objItem->{InMemoryTemplateCacheHitRate_Base}\n"; print "InMemoryTemplatesCached: $objItem->{InMemoryTemplatesCached}\n"; print "Name: $objItem->{Name}\n"; print "RequestBytesInTotal: $objItem->{RequestBytesInTotal}\n"; print "RequestBytesOutTotal: $objItem->{RequestBytesOutTotal}\n"; print "RequestExecutionTime: $objItem->{RequestExecutionTime}\n"; print "RequestsDisconnected: $objItem->{RequestsDisconnected}\n"; print "RequestsExecuting: $objItem->{RequestsExecuting}\n"; print "RequestsFailedTotal: $objItem->{RequestsFailedTotal}\n"; print "RequestsNotAuthorized: $objItem->{RequestsNotAuthorized}\n"; print "RequestsNotFound: $objItem->{RequestsNotFound}\n"; print "RequestsPerSec: $objItem->{RequestsPerSec}\n"; print "RequestsQueued: $objItem->{RequestsQueued}\n"; print "RequestsRejected: $objItem->{RequestsRejected}\n"; print "RequestsSucceeded: $objItem->{RequestsSucceeded}\n"; print "RequestsTimedOut: $objItem->{RequestsTimedOut}\n"; print "RequestsTotal: $objItem->{RequestsTotal}\n"; print "RequestWaitTime: $objItem->{RequestWaitTime}\n"; print "ScriptEngineCacheHitRate: $objItem->{ScriptEngineCacheHitRate}\n"; print "ScriptEngineCacheHitRate_Base: $objItem->{ScriptEngineCacheHitRate_Base}\n"; print "ScriptEnginesCached: $objItem->{ScriptEnginesCached}\n"; print "SessionDuration: $objItem->{SessionDuration}\n"; print "SessionsCurrent: $objItem->{SessionsCurrent}\n"; print "SessionsTimedOut: $objItem->{SessionsTimedOut}\n"; print "SessionsTotal: $objItem->{SessionsTotal}\n"; print "TemplateCacheHitRate: $objItem->{TemplateCacheHitRate}\n"; print "TemplateCacheHitRate_Base: $objItem->{TemplateCacheHitRate_Base}\n"; print "TemplateNotifications: $objItem->{TemplateNotifications}\n"; print "TemplatesCached: $objItem->{TemplatesCached}\n"; print "Timestamp_Object: $objItem->{Timestamp_Object}\n"; print "Timestamp_PerfTime: $objItem->{Timestamp_PerfTime}\n"; print "Timestamp_Sys100NS: $objItem->{Timestamp_Sys100NS}\n"; print "TransactionsAborted: $objItem->{TransactionsAborted}\n"; print "TransactionsCommitted: $objItem->{TransactionsCommitted}\n"; print "TransactionsPending: $objItem->{TransactionsPending}\n"; print "TransactionsPerSec: $objItem->{TransactionsPerSec}\n"; print "TransactionsTotal: $objItem->{TransactionsTotal}\n"; print "\n"; print "########\n"; print "\n"; }