The \fIstats\fR command shows a number of statistic counters.
.TP
.IthreadX.num.queries
number of queries received by thread
.TP
.IthreadX.num.cachehits
number of queries that were successfully answered using a cache lookup
.TP
.IthreadX.num.cachemiss
number of queries that needed recursive processing
.TP
.IthreadX.num.recursivereplies
The number of replies sent to queries that needed recursive processing. Could be smaller than threadX.num.cachemiss if due to timeouts no replies were sent for some queries.
.TP
.IthreadX.requestlist.avg
The average number of requests in the internal recursive processing request list on insert of a new incoming recursive processing query.
.TP
.IthreadX.requestlist.max
Maximum size attained by the internal recursive processing request list.
.TP
.IthreadX.requestlist.overwritten
Number of requests in the request list that were overwritten by newer entries. This happens if there is a flood of queries that recursive processing and the server has a hard time.
.TP
.IthreadX.requestlist.exceeded
Queries that were dropped because the request list was full. This happens if a flood of queries need recursive processing, and the server can not keep up.
.TP
.IthreadX.requestlist.current.all
Current size of the request list, includes internally generated queries (such
as priming queries and glue lookups).
.TP
.IthreadX.requestlist.current.user
Current size of the request list, only the requests from client queries.
.TP
.IthreadX.recursion.time.avg
Average time it took to answer queries that needed recursive processing. Note that queries that were answered from the cache are not in this average.
.TP
.IthreadX.recursion.time.median
The median of the time it took to answer queries that needed recursive
processing. The median means that 50% of the user queries were answered in
less than this time. Because of big outliers (usually queries to non
responsive servers), the average can be bigger than the median. This median
has been calculated by interpolation from a histogram.
.TP
.Itotal.num.queries
summed over threads.
.TP
.Itotal.num.cachehits
summed over threads.
.TP
.Itotal.num.cachemiss
summed over threads.
.TP
.Itotal.num.recursivereplies
summed over threads.
.TP
.Itotal.requestlist.avg
averaged over threads.
.TP
.Itotal.requestlist.max
the maximum of the thread requestlist.max values.
.TP
.Itotal.requestlist.overwritten
summed over threads.
.TP
.Itotal.requestlist.exceeded
summed over threads.
.TP
.Itotal.requestlist.current.all
summed over threads.
.TP
.Itotal.recursion.time.median
averaged over threads.
.TP
.Itime.now
current time in seconds since 1970.
.TP
.Itime.up
uptime since server boot in seconds.
.TP
.Itime.elapsed
time since last statistics printout, in seconds.
.SHEXTENDEDSTATISTICS
.TP
.Imem.total.sbrk
If sbrk(2) is available, an estimate of the heap size of the program in number of bytes. Close to the total memory used by the program, as reported by top and ps. Could be wrong if the OS allocates memory non\-contiguously.
.TP
.Imem.cache.rrset
Memory in bytes in use by the RRset cache.
.TP
.Imem.cache.message
Memory in bytes in use by the message cache.
.TP
.Imem.mod.iterator
Memory in bytes in use by the iterator module.
.TP
.Imem.mod.validator
Memory in bytes in use by the validator module. Includes the key cache and