diff options
Diffstat (limited to 'ldap/servers/slapd/back-ldbm/monitor.c')
-rw-r--r-- | ldap/servers/slapd/back-ldbm/monitor.c | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/ldap/servers/slapd/back-ldbm/monitor.c b/ldap/servers/slapd/back-ldbm/monitor.c index c6c63e7d..265021c9 100644 --- a/ldap/servers/slapd/back-ldbm/monitor.c +++ b/ldap/servers/slapd/back-ldbm/monitor.c @@ -69,7 +69,7 @@ int ldbm_back_monitor_instance_search(Slapi_PBlock *pb, Slapi_Entry *e, struct berval val; struct berval *vals[2]; char buf[BUFSIZ]; - u_long hits, tries; + PRUint64 hits, tries; long nentries,maxentries; size_t size,maxsize; /* NPCTE fix for bugid 544365, esc 0. <P.R> <04-Jul-2001> */ @@ -126,6 +126,26 @@ int ldbm_back_monitor_instance_search(Slapi_PBlock *pb, Slapi_Entry *e, sprintf(buf, "%ld", maxentries); MSET("maxEntryCacheCount"); + if(entryrdn_get_switch()) { + /* fetch cache statistics */ + cache_get_stats(&(inst->inst_dncache), &hits, &tries, + &nentries, &maxentries, &size, &maxsize); + sprintf(buf, "%" NSPRIu64, hits); + MSET("dnEntryCacheHits"); + sprintf(buf, "%" NSPRIu64, tries); + MSET("dnEntryCacheTries"); + sprintf(buf, "%lu", (unsigned long)(100.0*(double)hits / (double)(tries > 0 ? tries : 1))); + MSET("dnEntryCacheHitRatio"); + sprintf(buf, "%lu", size); + MSET("dnCurrentEntryCacheSize"); + sprintf(buf, "%lu", maxsize); + MSET("dnMaxEntryCacheSize"); + sprintf(buf, "%ld", nentries); + MSET("dnCurrentEntryCacheCount"); + sprintf(buf, "%ld", maxentries); + MSET("dnMaxEntryCacheCount"); + } + #ifdef DEBUG { /* debugging for hash statistics */ |