COM+ Instrumentation Interfaces
The COM+ Instrumentation metrics are published to a client by using COM+ Events, a loosely coupled events (LCE) system that stores event information from different publishers in an event store in the COM+ catalog. The metrics are grouped in categories based on the type of object for which they provide information. For each category, there is a correspondent interface to which the client can subscribe, and the subscribing client receives all the metrics in that category. The client can also subscribe to specific methods on the interface to receive specific metrics through filtering metrics.
The COM+ instrumentation interfaces described in the following table allow clients to receive notifications for a variety of COM+ instrumentation metrics.
Interfaces | Metrics provided |
---|---|
IComActivityEvents |
The user implements IComActivityEvents to be notified when an activity is created, destroyed, or timed out. |
IComAppEvents |
The user implements IComAppEvents to be notified when a server application starts, shuts down, or is forced to shut down. |
IComApp2Events |
The user implements IComApp2Events to be notified if a COM+ server application is loaded, shut down, or paused. The subscriber is also notified if the application is marked for recycling. |
IComCRMEvents |
The user implements IComCRMEvents to be notified when the Compensating Resource Manager (CRM) recovery starts or completes. |
IComExceptionEvents |
The user implements IComExceptionEvents to be notified when a user exception has occurred in a transactional component. |
IComIdentityEvents |
The IComIdentityEvents interface notifies the subscriber of an activity that is part of an Internet Information Services (IIS) Active Server Pages (ASP) page. |
IComInstanceEvents IComInstance2Events |
The IComInstanceEvents or IComInstance2Events interface notifies the subscriber of an object's creation or release. |
IComMethodEvents IComMethod2Events |
The user implements IComMethodEvents or IComMethod2Events to be notified when an object's method is called, returned, or generates an exception. |
IComObjectConstructionEvents |
The IComObjectConstructionEvents interface notifies the subscriber if a constructed object is created in an object pool. |
IComObjectConstruction2Events |
The IComObjectConstruction2Events interface notifies the subscriber if a constructed object is created. |
IComObjectEvents |
The user implements IComObjectEvents to be notified when a JIT-activated object is created or released. |
IComObjectPoolEvents IComObjectPool2Events |
The user implements IComObjectPoolEvents or IComObjectPool2Events to be notified if a transactional or non-transactional object is added to or obtained from the object pool. |
IComObjectPoolEvents2 |
The user implements IComObjectPoolEvents2 to be notified when a new pool is created or an object is returned or obtained from the pool. |
IComQCEvents |
The user implements IComQCEvents to be notified when a queued message is created or de-queued. |
IComResourceEvents |
The user implements IComResourceEvents to be notified when a new resource is created, allocated, destroyed, or tracked. |
IComSecurityEvents |
The IComSecurityEvents interface notifies the subscriber if the authentication of a method call succeeded or failed. |
IComThreadEvents |
The IComThreadEvents interface notifies the subscriber if a single-threaded apartment (STA) is created or terminated, and when an apartment thread is allocated. The subscriber is also notified if an activity is assigned or unassigned to an apartment thread. |
IComTrackingInfoCollection |
The IComTrackingInfoCollection interface notifies the subscriber of the type and count of tracked collections. |
IComTrackingInfoEvents |
The IComTrackingInfoEvents interface notifies the subscriber of tracked events. |
IComTrackingInfoObject |
The IComTrackingInfoObject interface notifies the subscriber of changes to the properties of tracked objects. |
IComTrackingInfoProperties |
The IComTrackingInfoProperties interface notifies the subscriber of changes to the count and names of tracked properties. |
IComTransactionEvents |
The user implements IComTransactionEvents to be notified when a distributed transaction of a component is committed or aborted. |
IComTransaction2Events |
The IComTransaction2Events interface notifies the subscriber if a Microsoft Distributed Transaction Coordinator (DTC) transaction starts, commits, or aborts. The subscriber is also notified when the transaction is in the prepare phase of the two-phase commit protocol. |
IComUserEvent |
The user implements IComUserEvent to be notified when a user-defined event has occurred. |
ISystemAppEventData |
The ISystemAppEventData interface notifies the subscriber of the creation and modification of COM+ application instances. |