PerflibV2 Interface

The PerflibV2 interface is a set of methods that the client can use to enumerate performance counter metadata and query performance counter values on a server. The client can view all the counters that are installed on the system. After the client has decided which performance counters are of interest, it can open a query on the server and add the necessary counters. The client then queries these counters, upon which the server returns the values of the counters that are specified by the client. The client closes the query on the server once it has queried the counters for the necessary duration.

Methods in RPC Opnum Order




Allows a client to enumerate the available countersets on a server.

Opnum: 0


Allows a client to enumerate metadata about a counterset or performance counter on a server.

Opnum: 1


Retrieves all active instances of a counterset on a server.

Opnum: 2


Opens a handle that is used to add, remove, or collect performance counters from a server.

Opnum: 3


Closes the handle that is returned from the PerflibV2OpenQueryHandle method.

Opnum: 4


Returns information on the performance counters.

Opnum: 5


Retrieves performance counter data.

Opnum: 6


Adds or removes performance counters from the query.

Opnum: 7

These methods MUST not throw exceptions except for those that are thrown by the underlying RPC protocol, as specified in [MS-RPCE].

Many of these methods return data in buffers whose format is not specified in the IDL file. All structures that are returned in the data buffer MUST begin on 8-byte boundaries, and all multibyte data fields are little-endian.