COUNTERDEF

The COUNTERDEF structure contains descriptions of performance counters that are used by the HrMonInit function. A table of COUNTERs is created, and Microsoft Exchange Server guarantees that the counters are contiguous and in the same order as they are described in this table.

Quick Info

Header file: MONITOR.H

typedef struct  // cd
{
  DWORD         iCounterTitleOffset;
  COUNTERTYPE   ctStatistic;
  LPMAPIFOLDER  lpFolder;
  PERIODTYPE    perPeriod;
  DWORD         cMinutes;
  LPCOUNTER *   lppcntUserCounter;
  DWORD         dwUserCounterType;
  DWORD         dwDetailLevel
  DWORD         dwDefaultScale
}  COUNTERDEF, * LPCOUNTERDEF;
 

Members

iCounterTitleOffset
Index of counter name, offset from the first counter, where the value of iCounterTitleOffset for the first counter is 0 (zero).
ctStatistic
The type of statistic monitored by this counter:
COUNTERTYPE_MESSAGES_IN_FOLDER
Total number of messages in folder
COUNTERTYPE_BYTES_IN_FOLDER
Total number of bytes in folder
COUNTERTYPE_MESSAGES_ENTERING_FOLDER
Number of messages entering folder
COUNTERTYPE_BYTES_ENTERING_FOLDER
Number of bytes entering folder
COUNTERTYPE_MESSAGES_LEAVING_FOLDER
Number of messages leaving folder
COUNTERTYPE_MESSAGES_TRANSFERRED_IN
Number of messages transferred into Microsoft Exchange Server
COUNTERTYPE_BYTES_TRANSFERRED_IN
Number of bytes transferred into Microsoft Exchange Server
COUNTERTYPE_MESSAGES_TRANSFERRED_OUT
Number of messages transferred out of Microsoft Exchange Server
COUNTERTYPE_BYTES_TRANSFERRED_OUT
Number of bytes transferred out of Microsoft Exchange Server
COUNTERTYPE_NDRS_IN
Number of NDRs into Microsoft Exchange Server
COUNTERTYPE_NDRS_OUT
Number of NDRs out of Microsoft Exchange Server
COUNTERTYPE_ASSOCIATIONS
Total number of associations
COUNTERTYPE_USER_DEFINED
User-defined counter
lpFolder
Points to an IMapiFolder interface, which is the folder where the counter is from, if applicable.
perPeriod
Period over which the statistics are totalled, if applicable:
PERIODTYPE_NONE
Not a period statistic.
PERIODTYPE_CONTINUOUS
Most-recent performance monitor sampling period.
PERIODTYPE_LAST_N_MINUTES
The past N one-minute intervals, where cMinutes is the value for N.
PERIODTYPE_TOTAL
Everything since the gateway started.
cMinutes
The value for N when perPeriod is PERIODTYPE_LAST_N_MINUTES.
lppcntlUserCounter
Address to return a pointer to user-defined counter; otherwise NULL.
dwUserCounterType
Points to a COUNTER, which is a user-defined counter.
dwDetailLevel
Counter complexity as defined in WINPERF.H:
PERF_DETAIL_NOVICE
PERF_DETAIL_ADVANCED
PERF_DETAIL_EXPERT
PERF_DETAIL_WIZARD
dwDefaultScale
Default scale as defined in WINPERF.H.

Remarks

When an array of COUNTERDEF objects is used, standard counters must come before any user-defined counters in the array (counters whose ctStatistic member has the value COUNTERTYPE_USER_DEFINED). Otherwise, the Performance Monitor can display erroneous counter information.

For additional information on this structure, see Monitoring Performance with PERFTEST. For information on the IMapiFolder interface, see the MAPI Programmer’s Reference.

See Also

HrMonLockCounters, HrMonUnlockCounters