Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

169 lines
8.3 KiB

  1. // **************************************************************************
  2. // Copyright (c) 1997-1999 Microsoft Corporation
  3. //
  4. // File: AppStatsProv.mof
  5. //
  6. // Description:
  7. // Creates the ComPlusAppStats class and associated registration entries
  8. //
  9. // History:
  10. //
  11. // **************************************************************************
  12. #pragma autorecover
  13. #pragma namespace("\\root\\cimv2")
  14. instance of __Namespace
  15. {
  16. Name = "MicrosoftHealthMonitor" ;
  17. } ;
  18. #pragma namespace("\\root\\cimv2\\MicrosoftHealthMonitor")
  19. instance of __Win32Provider as $P
  20. {
  21. Name = "MicrosoftComPlus_AppStats" ;
  22. ClsId = "{44262D4C-372F-4C89-BAF7-9A2C2A437B2F}" ;
  23. } ;
  24. instance of __InstanceProviderRegistration
  25. {
  26. Provider = $P;
  27. SupportsPut = FALSE;
  28. SupportsGet = TRUE;
  29. SupportsDelete = FALSE;
  30. SupportsEnumeration = FALSE;
  31. };
  32. /////////////////////////////////////////////////////////////////////
  33. //
  34. // Declare a class whose dynamic instances are provided by the
  35. // sample provider.
  36. [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")]
  37. class MicrosoftComPlus_AppStats
  38. {
  39. [Key, Description("COM+ App Name")]
  40. string AppName;
  41. [Key, Description("Number of seconds to monitor without a query")]
  42. sint32 MaxIdleTime;
  43. [Description("Committed transactions since monitoring began")]
  44. sint32 TotalCommittedTransactions;
  45. [Description("Committed transactions per second since the last query")]
  46. real32 CommittedTransactionsPerSecond;
  47. [Description("Aborted transactions since monitoring began")]
  48. sint32 TotalAbortedTransactions;
  49. [Description("Aborted transactions per second since the last query")]
  50. real32 AbortedTransactionsPerSecond;
  51. [Description("Object creations since monitoring began")]
  52. sint32 TotalObjectCreations;
  53. [Description("Object creations per second since the last query")]
  54. real32 ObjectCreationsPerSecond;
  55. [Description("Object activations since monitoring began")]
  56. sint32 TotalObjectActivations;
  57. [Description("Object activations per second since the last query")]
  58. real32 ObjectActivationsPerSecond;
  59. [Description("Total number of shutdowns since monitoring began")]
  60. sint32 TotalShutdowns;
  61. [Description("Timeout shutdowns since monitoring began")]
  62. sint32 TimeoutShutdowns;
  63. [Description("Administrative shutdowns since monitoring began")]
  64. sint32 AdminShutdowns;
  65. [Description("Unexpected shutdowns since monitoring began")]
  66. sint32 FailureShutdowns;
  67. [Description("Object pool timeouts since monitoring began")]
  68. sint32 ObjectPoolTimeouts;
  69. [Description("Process statistic: a short textual description (one-line string) of the object")]
  70. string Caption;
  71. [Description("Process statistic: the name of the class or the subclass used in the creation of an instance")]
  72. string CreationClassName;
  73. [Description("Process statistic: time that the process began executing")]
  74. datetime CreationDate;
  75. [Description("Process statistic: the name of the Computer System class or the subclass used in the creation of an instance")]
  76. string CSCreationClassName;
  77. [Description("Process statistic: the name of the Computer System")]
  78. string CSName;
  79. [Description("Process statistic: a textual description of the object")]
  80. string Description;
  81. [Description("Process statistic: the path to the executable file of the process")]
  82. string ExecutablePath;
  83. [Description("Process statistic: the current operating condition of the process. Values include ready (2), running (3), and blocked (4), among others.")]
  84. uint16 ExecutionState;
  85. [Description("Process statistic: a string used to identify the process. A process ID is a process handle.")]
  86. string Handle;
  87. [Description("Process statistic: the total number of handles currently open by this process")]
  88. uint32 HandleCount;
  89. [Description("Process statistic: time when the object was installed. A lack of a value does not indicate that the object is not installed.")]
  90. datetime InstallDate;
  91. [Description("Process statistic: time in kernel mode, in milliseconds. If this information is not available, a value of 0 should be used.")]
  92. uint64 KernelModeTime;
  93. [Description("Process statistic: the maximum working set size of the process")]
  94. uint32 MaximumWorkingSetSize;
  95. [Description("Process statistic: the minimum working set size of the process")]
  96. uint32 MinimumWorkingSetSize;
  97. [Description("Process statistic: the label by which the object is known")]
  98. string Name;
  99. [Description("Process statistic: the name of the Operating System class or the subclass used in the creation of an instance")]
  100. string OSCreationClassName;
  101. [Description("Process statistic: the name of the Operating System")]
  102. string OSName;
  103. [Description("Process statistic: the number of I/O operations performed, other than read and write operations.")]
  104. uint64 OtherOperationCount;
  105. [Description("Process statistic: the amount of data transferred during operations other than read and write operations.")]
  106. uint64 OtherTransferCount;
  107. [Description("Process statistic: the number of page faults generated by the process")]
  108. uint32 PageFaults;
  109. [Description("Process statistic: the amount of page file space currently being used by the process")]
  110. uint32 PageFileUsage;
  111. [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.")]
  112. uint32 ParentProcessId;
  113. [Description("Process statistic: the maximum amount of page file space used during the life of the process")]
  114. uint32 PeakPageFileUsage;
  115. [Description("Process statistic: the maximum virtual address space the process has used at any one time")]
  116. uint64 PeakVirtualSize;
  117. [Description("Process statistic: the peak working set size of the process")]
  118. uint32 PeakWorkingSetSize;
  119. [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)")]
  120. uint32 Priority;
  121. [Description("Process statistic: the current number of pages allocated that are accessible only to this process")]
  122. uint64 PrivatePageCount;
  123. [Description("Process statistic: the global process identifier that can be used to identify a process")]
  124. uint32 ProcessId;
  125. [Description("Process statistic: the quota amount of non-paged pool usage for the process")]
  126. uint32 QuotaNonPagedPoolUsage;
  127. [Description("Process statistic: the quota amount of paged pool usage for the process")]
  128. uint32 QuotaPagedPoolUsage;
  129. [Description("Process statistic: the peak quota amount of non-paged pool usage for the process")]
  130. uint32 QuotaPeakNonPagedPoolUsage;
  131. [Description("Process statistic: the peak quota amount of paged pool usage for the process")]
  132. uint32 QuotaPeakPagedPoolUsage;
  133. [Description("Process statistic: the number of read operations performed")]
  134. uint64 ReadOperationCount;
  135. [Description("Process statistic: the amount of data read")]
  136. uint64 ReadTransferCount;
  137. [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")]
  138. uint32 SessionId;
  139. [Description("Process statistic: the current status of the object such as OK, Degraded, Pred Fail, Error, Starting, Stopping, or Service")]
  140. string Status;
  141. [Description("Process statistic: time that the process was stopped or terminated")]
  142. datetime TerminationDate;
  143. [Description("Process statistic: the number of active threads in this process")]
  144. uint32 ThreadCount;
  145. [Description("Process statistic: time in user mode, in milliseconds. If this information is not available, a value of 0 should be used.")]
  146. uint64 UserModeTime;
  147. [Description("Process statistic: the current size in bytes of the virtual address space the process is using")]
  148. uint64 VirtualSize;
  149. [Description("Process statistic: the version of Windows in which the process is running")]
  150. string WindowsVersion;
  151. [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")]
  152. uint64 WorkingSetSize;
  153. [Description("Process statistic: the number of write operations performed")]
  154. uint64 WriteOperationCount;
  155. [Description("Process statistic: the amount of data written")]
  156. uint64 WriteTransferCount;
  157. };