// --------------------------------------------------------------------------- // // Copyright (c) Microsoft Corporation. All rights reserved. // // --------------------------------------------------------------------------- //--------------------------------------------------------------------------- // DSAccess Performance Monitor .H file for LODCTR.EXE // //--------------------------------------------------------------------------- //--------------------------------------------------------------------------- // Cache Instance Object and counters // // One object instance per unique Cache Instance (2 max) //--------------------------------------------------------------------------- #define CACHE_OBJ 0 #define CACHE_HITS_RATE 2 #define CACHE_MISSES_RATE 4 #define CACHE_EXPIRIES_USER_RATE 6 #define CACHE_EXPIRIES_CONFIG_RATE 8 #define CACHE_INSERTS_USER_RATE 10 #define CACHE_INSERTS_CONFIG_RATE 12 #define CACHE_LDAP_SEARCHES_RATE 14 #define CACHE_ASYNC_NOTIFIES 16 #define CACHE_ASYNC_READS 18 #define CACHE_ASYNC_SEARCHES 20 #define CACHE_TOTAL_USER_ENTRIES 22 #define CACHE_TOTAL_CONFIG_ENTRIES 24 #define CACHE_USER_DN_ENTRIES 26 #define CACHE_CONFIG_DN_ENTRIES 28 #define CACHE_USER_SRCH_ENTRIES 30 #define CACHE_CONFIG_SRCH_ENTRIES 32 #define CACHE_USER_NFDN_ENTRIES 34 #define CACHE_CONFIG_NFDN_ENTRIES 36 #define CACHE_USER_NFGUID_ENTRIES 38 #define CACHE_CONFIG_NFGUID_ENTRIES 40 #define CACHE_SIZE_TOTAL_USER_ENTRIES 42 #define CACHE_SIZE_TOTAL_CONFIG_ENTRIES 44 #define CACHE_SIZE_USER_DN_ENTRIES 46 #define CACHE_SIZE_CONFIG_DN_ENTRIES 48 #define CACHE_SIZE_USER_SRCH_ENTRIES 50 #define CACHE_SIZE_CONFIG_SRCH_ENTRIES 52 #define CACHE_SIZE_USER_NFDN_ENTRIES 54 #define CACHE_SIZE_CONFIG_NFDN_ENTRIES 56 #define CACHE_SIZE_USER_NFGUID_ENTRIES 58 #define CACHE_SIZE_CONFIG_NFGUID_ENTRIES 60 //--------------------------------------------------------------------------- // 64 bit counters for accumulating totals //--------------------------------------------------------------------------- #define CACHE_HITS_TOTAL 62 #define CACHE_MISSES_TOTAL 64 #define CACHE_EXPIRIES_USER_TOTAL 66 #define CACHE_EXPIRIES_CONFIG_TOTAL 68 #define CACHE_INSERTS_USER_TOTAL 70 #define CACHE_INSERTS_CONFIG_TOTAL 72 #define CACHE_LDAP_SEARCHES_TOTAL 74 //--------------------------------------------------------------------------- // Per Process API counters // // One object instance per process using dsaccess //--------------------------------------------------------------------------- #define PROC_OBJ 76 #define PROC_PROCID 78 #define PROC_RATE_READ 80 #define PROC_RATE_SEARCH 82 #define PROC_RATE_WRITE 84 #define PROC_RATE_PAGED 86 #define PROC_RATE_VLV 88 #define PROC_RATE_NOT_FOUND_CONFIG_READS 90 #define PROC_RATE_LONG_RUNNING_OPERATIONS 92 #define PROC_RATE_TIMEOUTS 94 #define PROC_RATE_NOTIFICATIONS_RECEIVED 96 #define PROC_RATE_NOTIFICATIONS_REPORTED 98 #define PROC_RATE_CRITICAL_VALIDATION_FAILURES 100 #define PROC_RATE_NON_CRITICAL_VALIDATION_FAILURES 102 #define PROC_RATE_IGNORED_VALIDATION_FAILURES 104 #define PROC_OPEN_CONNECTIONS_DC 106 #define PROC_OPEN_CONNECTIONS_GC 108 #define PROC_OUTSTANDING_REQUESTS 110 #define PROC_TOPOLOGY_VERSION 112 //--------------------------------------------------------------------------- // LDAP latency (PROC_TIME_* counters are 64 bit) //--------------------------------------------------------------------------- #define PROC_TIME_READ 114 #define PROC_TIME_READ_BASE 116 #define PROC_TIME_SEARCH 118 #define PROC_TIME_SEARCH_BASE 120 #define PROC_TIME_WRITE 122 #define PROC_TIME_WRITE_BASE 124 //--------------------------------------------------------------------------- // DC Object and counters // // One object instance per DC (64 max) //--------------------------------------------------------------------------- #define DC_OBJ 126 #define DC_RATE_READ 128 #define DC_RATE_SEARCH 130 #define DC_RATE_TIMEOUTS 132 #define DC_RATE_TIMELIMIT_EXCEEDED 134 #define DC_RATE_FATAL_ERRORS 136 #define DC_RATE_DISCONNECTS 138 #define DC_RATE_SEARCH_FAILURES 140 #define DC_RATE_MODIFICATION_ERROR 142 #define DC_RATE_BIND_FAILURES 144 #define DC_RATE_LONG_RUNNING_OPERATIONS 146 #define DC_RATE_PAGED 148 #define DC_RATE_VLV 150 #define DC_OUTSTANDING_REQUESTS 152 #define DC_TIME_NETLOGON 154 #define DC_TIME_GETHOSTBYNAME 156 #define DC_AVG_TIME_KERBEROS 158 #define DC_AVG_TIME_CONNECTION 160 #define DC_LOCAL_SITE 162 #define DC_STATE_REACHABILITY 164 #define DC_STATE_SYNCHRONIZED 166 #define DC_STATE_GC_CAPABLE 168 #define DC_STATE_IS_PDC 170 #define DC_STATE_SACL_RIGHT 172 #define DC_STATE_CRITICAL_DATA 174 #define DC_STATE_NETLOGON 176 #define DC_STATE_OSVERSION 178 //--------------------------------------------------------------------------- // LDAP Search Time (DC_TIME_READ and DC_TIME_SEARCH are 64 bit) //--------------------------------------------------------------------------- #define DC_TIME_READ 180 #define DC_TIME_READ_BASE 182 #define DC_TIME_SEARCH 184 #define DC_TIME_SEARCH_BASE 186 //--------------------------------------------------------------------------- // Local DC Object and counters // // One object instance per Local DC (64 max) //--------------------------------------------------------------------------- #define LOCAL_DC_OBJ 188 #define LOCAL_DC_RATE_READ 190 #define LOCAL_DC_RATE_SEARCH 192 #define LOCAL_DC_RATE_TIMEOUTS 194 #define LOCAL_DC_RATE_TIMELIMIT_EXCEEDED 196 #define LOCAL_DC_RATE_FATAL_ERRORS 198 #define LOCAL_DC_RATE_DISCONNECTS 200 #define LOCAL_DC_RATE_SEARCH_FAILURES 202 #define LOCAL_DC_RATE_MODIFICATION_ERROR 204 #define LOCAL_DC_RATE_BIND_FAILURES 206 #define LOCAL_DC_RATE_LONG_RUNNING_OPERATIONS 208 #define LOCAL_DC_RATE_PAGED 210 #define LOCAL_DC_RATE_VLV 212 #define LOCAL_DC_OUTSTANDING_REQUESTS 214 #define LOCAL_DC_TIME_NETLOGON 216 #define LOCAL_DC_TIME_GETHOSTBYNAME 218 #define LOCAL_DC_AVG_TIME_KERBEROS 220 #define LOCAL_DC_AVG_TIME_CONNECTION 222 #define LOCAL_DC_STATE_REACHABILITY 224 #define LOCAL_DC_STATE_SYNCHRONIZED 226 #define LOCAL_DC_STATE_GC_CAPABLE 228 #define LOCAL_DC_STATE_IS_PDC 230 #define LOCAL_DC_STATE_SACL_RIGHT 232 #define LOCAL_DC_STATE_CRITICAL_DATA 234 #define LOCAL_DC_STATE_NETLOGON 236 #define LOCAL_DC_STATE_OSVERSION 238 //--------------------------------------------------------------------------- // Local DC LDAP Search Time (LOCAL_DC_TIME_READ and LOCAL_DC_TIME_SEARCH are 64 bit) //--------------------------------------------------------------------------- #define LOCAL_DC_TIME_READ 240 #define LOCAL_DC_TIME_READ_BASE 242 #define LOCAL_DC_TIME_SEARCH 244 #define LOCAL_DC_TIME_SEARCH_BASE 246 //--------------------------------------------------------------------------- // Global counters //--------------------------------------------------------------------------- #define GLOBAL_OBJ 248 #define GLOBAL_TIME_DISCOVERY 250 #define GLOBAL_TIME_DNSQUERY 252 #define GLOBAL_DC_IN_SITE 254 #define GLOBAL_GC_IN_SITE 256 #define GLOBAL_DC_OUT_OF_SITE 258 #define GLOBAL_GC_OUT_OF_SITE 260 //--------------------------------------------------------------------------- // Markers for last counters for each object type //--------------------------------------------------------------------------- #define CACHE_SHORT_OBJ_END CACHE_SIZE_CONFIG_NFGUID_ENTRIES #define CACHE_SHORT_OBJ_NUM (CACHE_SHORT_OBJ_END - CACHE_OBJ) / 2 #define CACHE_LONG_OBJ_END CACHE_LDAP_SEARCHES_TOTAL #define CACHE_LONG_OBJ_NUM (CACHE_LONG_OBJ_END - CACHE_SHORT_OBJ_END) / 2 #define CACHE_OBJ_NUM (CACHE_SHORT_OBJ_NUM + CACHE_LONG_OBJ_NUM) #define PROC_SHORT_OBJ_END PROC_TOPOLOGY_VERSION #define PROC_SHORT_OBJ_NUM (PROC_SHORT_OBJ_END - PROC_OBJ) / 2 #define PROC_SEARCH_OBJ_END PROC_TIME_WRITE_BASE #define PROC_SEARCH_OBJ_NUM (PROC_SEARCH_OBJ_END - PROC_SHORT_OBJ_END) / 4 #define PROC_OBJ_NUM (PROC_SHORT_OBJ_NUM + PROC_SEARCH_OBJ_NUM * 2) #define DC_SHORT_OBJ_END DC_STATE_OSVERSION #define DC_SHORT_OBJ_NUM (DC_SHORT_OBJ_END - DC_OBJ) / 2 #define LOCAL_DC_SHORT_OBJ_NUM (DC_SHORT_OBJ_NUM - 1) #define DC_SEARCH_OBJ_END DC_TIME_SEARCH_BASE #define DC_SEARCH_OBJ_NUM (DC_SEARCH_OBJ_END - DC_SHORT_OBJ_END) / 4 #define DC_OBJ_NUM (DC_SHORT_OBJ_NUM + DC_SEARCH_OBJ_NUM * 2) #define LOCAL_DC_OBJ_NUM (DC_OBJ_NUM - 1) #define GLOBAL_OBJ_END GLOBAL_GC_OUT_OF_SITE #define GLOBAL_OBJ_NUM (GLOBAL_OBJ_END - GLOBAL_OBJ) / 2