[This is preliminary documentation and subject to change]
This metabase property contains flags that specify how IIS should log CPU times for services, servers, or applications. You can use this property to configure IIS to sum the CPU times of CGI applications only, of ISAPI extensions and ASP applications only, or of all applications.
Note
Because process accounting in IIS uses
Windows Job Objects to monitor CPU times for an entire process,
process accounting will log and throttle only applications that are
isolated in a separate process from IIS.
Process throttling and process accounting are independently controlled by several other metabase properties. In order to enable process accounting you must set CpuEnableLogging (which is a member of CPULoggingMask) to TRUE, and set at least one other CPULoggingMask property to TRUE. It is also necessary to set at least one member flag of the CpuLoggingOptions, set CPULoggingInterval to a nonzero value, and set either CPUAppEnabled or CPUCGIEnabled, as appropriate, to TRUE.
To properly activate process throttling, CPULimitsEnabled must be set to TRUE, and at least one of the following properties should be set to TRUE: CPULimitLogEvent, CPULimitPriority, CPULimitPriority, or CPULimitPause.
| Attribute Name | Attribute Value |
| Data Type | DWORD |
| Attributes | INHERIT |
| Default Value | CPUEnableAllProcLogging |
| MetaFlagsEx | CACHE_PROPERTY_MODIFIED |
| User Type | IIS_MD_UT_SERVER |
| StartingNumber | |
| EndingNumber | 0 |
| ID | 2146 |
This property is accessible at the following locations:
| Metabase Path | IIS Admin Object Type |
| /LM/W3SVC/2 | IIsWebServer |
| /LM/W3SVC/Info/Templates/Public Web Site | IIsWebServer |
| /LM/W3SVC/Info/Templates/Secure Web Site | IIsWebServer |
| /LM/W3SVC | IIsWebService |
The following table lists additional information required only for code that uses the IIS Admin Base Object.
| Metabase identifier | MD_CPU_LOGGING_OPTIONS |
| Data type | DWORD |
| User type | IIS_MD_UT_SERVER |
| Name | Value | Metabase Bitmask Identifier | Description |
| CPUEnableAllProcLogging | 1 | 0x1 |
MD_CPU_ENABLE_ALL_PROC_LOGGING | Log the sum of CPU time
used by applications and CGI. This flag indicates whether IIS
should log total CPU times for all out-of-process ISAPI extensions
and ASP and CGI applications. |
| CPUEnableCGILogging | 2 | 0x2 |
MD_CPU_ENABLE_CGI_LOGGING | Log the CPU time used
by CGI applications. This flag indicates whether IIS should log
total CPU times for CGI applications. |
| CPUEnableAppLogging | 4 | 0x4 |
MD_CPU_ENABLE_APP_LOGGING | Log the CPU time used
by ISAPI and ASP applications. This flag indicates whether the
total number of active processes is recorded when process
accounting is performed. |