// ************************************************************************** // Copyright (c) 1997-1999 Microsoft Corporation // // File: AppStatsProv.mof // // Description: // Creates the ComPlusAppStats class and associated registration entries // // History: // // ************************************************************************** #pragma autorecover #pragma namespace("\\root\\cimv2") instance of __Namespace { Name = "MicrosoftHealthMonitor" ; } ; #pragma namespace("\\root\\cimv2\\MicrosoftHealthMonitor") instance of __Win32Provider as $P { Name = "MicrosoftComPlus_AppStats" ; ClsId = "{44262D4C-372F-4C89-BAF7-9A2C2A437B2F}" ; } ; instance of __InstanceProviderRegistration { Provider = $P; SupportsPut = FALSE; SupportsGet = TRUE; SupportsDelete = FALSE; SupportsEnumeration = FALSE; }; ///////////////////////////////////////////////////////////////////// // // Declare a class whose dynamic instances are provided by the // sample provider. [dynamic, provider("MicrosoftComPlus_AppStats"), Description("This class provides statistics for a COM+ App and process statistics for the associated process if the COM+ App is running")] class MicrosoftComPlus_AppStats { [Key, Description("COM+ App Name")] string AppName; [Key, Description("Number of seconds to monitor without a query")] sint32 MaxIdleTime; [Description("Committed transactions since monitoring began")] sint32 TotalCommittedTransactions; [Description("Committed transactions per second since the last query")] real32 CommittedTransactionsPerSecond; [Description("Aborted transactions since monitoring began")] sint32 TotalAbortedTransactions; [Description("Aborted transactions per second since the last query")] real32 AbortedTransactionsPerSecond; [Description("Object creations since monitoring began")] sint32 TotalObjectCreations; [Description("Object creations per second since the last query")] real32 ObjectCreationsPerSecond; [Description("Object activations since monitoring began")] sint32 TotalObjectActivations; [Description("Object activations per second since the last query")] real32 ObjectActivationsPerSecond; [Description("Total number of shutdowns since monitoring began")] sint32 TotalShutdowns; [Description("Timeout shutdowns since monitoring began")] sint32 TimeoutShutdowns; [Description("Administrative shutdowns since monitoring began")] sint32 AdminShutdowns; [Description("Unexpected shutdowns since monitoring began")] sint32 FailureShutdowns; [Description("Object pool timeouts since monitoring began")] sint32 ObjectPoolTimeouts; [Description("Process statistic: a short textual description (one-line string) of the object")] string Caption; [Description("Process statistic: the name of the class or the subclass used in the creation of an instance")] string CreationClassName; [Description("Process statistic: time that the process began executing")] datetime CreationDate; [Description("Process statistic: the name of the Computer System class or the subclass used in the creation of an instance")] string CSCreationClassName; [Description("Process statistic: the name of the Computer System")] string CSName; [Description("Process statistic: a textual description of the object")] string Description; [Description("Process statistic: the path to the executable file of the process")] string ExecutablePath; [Description("Process statistic: the current operating condition of the process. Values include ready (2), running (3), and blocked (4), among others.")] uint16 ExecutionState; [Description("Process statistic: a string used to identify the process. A process ID is a process handle.")] string Handle; [Description("Process statistic: the total number of handles currently open by this process")] uint32 HandleCount; [Description("Process statistic: time when the object was installed. A lack of a value does not indicate that the object is not installed.")] datetime InstallDate; [Description("Process statistic: time in kernel mode, in milliseconds. If this information is not available, a value of 0 should be used.")] uint64 KernelModeTime; [Description("Process statistic: the maximum working set size of the process")] uint32 MaximumWorkingSetSize; [Description("Process statistic: the minimum working set size of the process")] uint32 MinimumWorkingSetSize; [Description("Process statistic: the label by which the object is known")] string Name; [Description("Process statistic: the name of the Operating System class or the subclass used in the creation of an instance")] string OSCreationClassName; [Description("Process statistic: the name of the Operating System")] string OSName; [Description("Process statistic: the number of I/O operations performed, other than read and write operations.")] uint64 OtherOperationCount; [Description("Process statistic: the amount of data transferred during operations other than read and write operations.")] uint64 OtherTransferCount; [Description("Process statistic: the number of page faults generated by the process")] uint32 PageFaults; [Description("Process statistic: the amount of page file space currently being used by the process")] uint32 PageFileUsage; [Description("Process statistic: the unique identifier of the process that created this process. Process identifier numbers are reused, so they only identify a process for the lifetime of that process.")] uint32 ParentProcessId; [Description("Process statistic: the maximum amount of page file space used during the life of the process")] uint32 PeakPageFileUsage; [Description("Process statistic: the maximum virtual address space the process has used at any one time")] uint64 PeakVirtualSize; [Description("Process statistic: the peak working set size of the process")] uint32 PeakWorkingSetSize; [Description("Process statistic: the scheduling priority of the process within the operating system. Priority values can range from 0 (lowest priority) to 31 (highest priority)")] uint32 Priority; [Description("Process statistic: the current number of pages allocated that are accessible only to this process")] uint64 PrivatePageCount; [Description("Process statistic: the global process identifier that can be used to identify a process")] uint32 ProcessId; [Description("Process statistic: the quota amount of non-paged pool usage for the process")] uint32 QuotaNonPagedPoolUsage; [Description("Process statistic: the quota amount of paged pool usage for the process")] uint32 QuotaPagedPoolUsage; [Description("Process statistic: the peak quota amount of non-paged pool usage for the process")] uint32 QuotaPeakNonPagedPoolUsage; [Description("Process statistic: the peak quota amount of paged pool usage for the process")] uint32 QuotaPeakPagedPoolUsage; [Description("Process statistic: the number of read operations performed")] uint64 ReadOperationCount; [Description("Process statistic: the amount of data read")] uint64 ReadTransferCount; [Description("Process statistic: the unique identifier that is generated by the operating system when the session is created. A session spans a period of time from log in to log out on a particular system")] uint32 SessionId; [Description("Process statistic: the current status of the object such as OK, Degraded, Pred Fail, Error, Starting, Stopping, or Service")] string Status; [Description("Process statistic: time that the process was stopped or terminated")] datetime TerminationDate; [Description("Process statistic: the number of active threads in this process")] uint32 ThreadCount; [Description("Process statistic: time in user mode, in milliseconds. If this information is not available, a value of 0 should be used.")] uint64 UserModeTime; [Description("Process statistic: the current size in bytes of the virtual address space the process is using")] uint64 VirtualSize; [Description("Process statistic: the version of Windows in which the process is running")] string WindowsVersion; [Description("Process statistic: the amount of memory in bytes that a process needs to execute efficiently, for an operating system that uses page-based memory management")] uint64 WorkingSetSize; [Description("Process statistic: the number of write operations performed")] uint64 WriteOperationCount; [Description("Process statistic: the amount of data written")] uint64 WriteTransferCount; };