nfsstat -h [ ip_address | host_name ] [ interval ]
nfsstat -l [ count ]
nfsstat -z
nfsstat -d
nfsstat -C
nfsstat [ -c ] [ -t ]
If just the interval argument is specified, nfsstat continuously displays the summary information for the following NFS requests: getattr, lookup, readlink, read, write, create, remove, and readdir/readdirplus. The output will show incremental statistics for the interval (in seconds) since the command was executed. If count argument is also specified, then the command exits after displaying the statistics for the specified number of intervals. The interval specified must be an integer.
Per-client statistics can also be collected and displayed by enabling the nfs.per_client_stats.enable options (using the options command - see na_options(1)) and invoking nfsstat with the -h or the -l options. Per-client statistics are collected for up to the first 256 NFS clients that have mounted the filesystem on the given filer.
Statistics for read and write sizes are also displayed as number of read or write requests made by each client grouped by size of request. Without this option, the cumulative statistics for all clients are displayed.
If the IP address or host name is specified, an optional interval argument can be supplied. This will cause interval statistics to be displayed for the specified client. The behavior is identical as described in the Description paragraph.
no deferred msg processed
Number of NFS requests unqueued
and processed from NFS over TCP
connections that had been put
on a queue waiting for NFS
resources to become available.
This is not the same as number
of NFS connections queued up
waiting for resources. Note
that one connection can contain
more than one NFS requests
waiting to be processed.
(cumulative) active Two values are printed here. The maximum (cumulative) number of entries available in the NFS operation table and the total number of entries processing requests at that time.
tcp input flowcontrol xmit
Number of times the Filer went
into transmit flow control.
tcp input flowcontrol out receive Number of times the Filer came out of receive flow control.
tcp input flowcontrol out xmit
Number of times the Filer came
out of transmit flow control.
sockets zapped nfs Number of nfs sockets disconnected because the send upcall argument in the underlying tcp socket had been zeroed.
sockets zapped tcp Number of tcp sockets disconnected because both the send and receive upcall arguments in that tcp socket had been zeroed.
v2 mount (requested, granted, denied, resolving) The requested is the number of v2 mount requests. The granted is the number of mount requests granted access. The denied is the number denied access. The resolving is the number of mount requests currently awaiting access resolution.
v2 unmount (requested, granted, denied) The requested is the number of v2 unmount requests. The granted is the number of unmount requests granted. The denied is the number denied.
v2 unmount all (requested, granted, denied) The requested is the number of v2 unmount all requests. The granted is the number of unmount all requests granted. The denied is the number denied.
v3 mount (requested, granted, denied, resolving) The requested is the number of v3 mount requests. The granted is the number of mount requests granted access. The denied is the number denied access. The resolving is the number of mount requests currently awaiting access resolution.
v3 unmount (requested, granted, denied) The requested is the number of v3 unmount requests. The granted is the number of unmount requests granted. The denied is the number denied.
v3 unmount all (requested, granted, denied) The requested is the number of v3 unmount all requests. The granted is the number of unmount all requests granted. The denied is the number denied.
mount service requests (curr, total, max, redriven) These are the requests made to the mount service. These include requests for mount, umount, showmount, etc. The curr is the number of current requests to the mount service. The total is the total number of requests made to the mount service. The max is the high water mark of the curr counter. The redriven is the total number of mount service requests that needed to be redriven after an access cache population.
access cache (hits, partial misses, misses) A request coming into the cache can be looking for any combination of read, write and root attributes. The hits are the number of requests which were serviced completely by an entry already in the access cache. The partial misses are the number of requests that were not serviced completely by an entry in the access cache. The misses are the number of requests which were not serviced by the access cache because there was no entry in the cache for that client. Note that in general, the ratio hits to the sum of hits and partial misses + misses should be high. I.e., we want significantly more hits than misses.
access cache lookup requests (curr, total, max) The curr is the number of current requests which are being serviced. This number is also reprentative of the number of entries on the export worker queue. The total is the sum of all requests. The max is the high water mark of the curr counter.
access cache nodes(found, created) The found is the number of entries that were hit as a result of a cache lookup. The created is the total number of access cache nodes created since boot.
access cache requests(queued, unqueued) The queued is the number of requests that had to wait (and were queued) for the access cache to be populated before they could be processed. The unqueued is the number of requests that were unqueued and processed after the access cache was populated.
access cache requests unqueued by (flush, restore) These are the number of requests waiting for access cache population which were restarted when that access cache was flushed through the exportfs -f command or was restored from disk upon reboot or failover.
access cache read requests (queued, unqueued) The queued counter is for requests which got a cache miss for read access and had to wait because that information was not in the cache. The unqueued counter is for requests which were restarted once the read access information was inserted in the access cache.
access cache write requests (queued, unqueued) The queued counter is for requests which got a cache miss for write access and had to wait because that information was not in the cache. The unqueued counter is for requests which were restarted once the write access information was inserted in the access cache.
access cache root requests (queued, unqueued) The queued counter is for requests which got a cache miss for root access and had to wait because that information was not in the cache. The unqueued counter is for requests which were restarted once the root access information was inserted in the access cache.
access cache expired hits (total, read, write,
root)
These are the number of hits in
the access cache for read,
write or root attribute where
the access information for that
attribute had not been
refreshed for sometime. The
attribute information expires
based on the timeout value set
in nfs.export.neg.timeout and
nfs.export.pos.timeout.
access cache inserts (full, partial, dup, subnet,
restore)
The full count represents the
number of inserts into the
access cache where all
attributes upon which one or
more requests were waiting,
were resolved. As a result of a
full insert one or more
requests would be restarted.
The partial count represents
the number of inserts where
some of the attributes upon
which one or more requests were
waiting, were resolved. No
requests are restarted as a
result of a partial insert.
The dup count represents the
number of times an insert was
done for an attribute when the
access cache already contained
some information about that
attribute. However its not neccessary
that the same access
information was inserted the
second time around. e.g. If
the cache contained information
about node A.B.C.D as read
being allowed and then another
insert was done in the cache
which changed this information
to read being denied for
A.B.C.D, this would be considered
a dup insert. The subet
count represents the number of
times access information was
inserted for a subnet. The
restore count represents the
number of times an insert was
done based on information on
disk. This happens upon reboot
or cluster failover.
access cache refreshes requested (total, read,
write, root)
These counts represent for each
attribute the number of times
stale information was returned
by the cache and a refresh was
requested for that attribute.
access cache refreshes done (total, read, write,
root)
These counts represent for each
attribute the number of times a
refresh was done for that
attribute.
access cache errors (query, insert, no mem) The query counter indicates the total number of errors (including no mem) encountered when doing a query in the cache. The insert counter indicates the total number of errors (including no mem) encountered when doing an insert in the cache. The no mem counter indicates the number of times a query or insert could not be done because memory was not available.
access cache nodes (flushed, harvested, harvests
failed)
The flushed count represents
the number of nodes removed
from the access cache as a
result of an exportfs -f command.
The harvested count represents
the number of nodes
removed from the access cache
which have not been accessed
for more than nfs.export.harvest.timeout
seconds. The harvests
failed count represents
the number of times a node was
found in a state where requests
were waiting for resolution on
it and that node had not been
accessed for more than
nfs.export.harvest.timeout seconds.
High value of this
counter may point to issues
with name resolution service.
access cache nodes (allocated, free) The allocated count represents the total number of nodes allocated by all the access caches. The free count represents the number of nodes which are not in use by any access cache.
access cache qctx (allocated, free) The allocated count represents the total number of query contexts allocated to queue requests waiting for resolution. The free count represents the number of contexts which are not in use.
access cache persistence errors(total) The total count represents the errors encountered while saving or restoring access cache data to/from disk.
access cache persistence nodes handled
(restored,saved)
The restored count represents
the number of nodes that were
restored from the persistent
access cache. The saved count
represents the number of nodes
saved since the last system
boot. This is cumulative and
periodically increases after
periodic saving of access cache
into persistent storage.
access cache persistence rules deleted (total) The total count represents the number of times we reference a rule which no longer exists while restoring content from persistent access cache. Contents for such rules cannot (and need not) be restored.
access cache persistence memchunks (allocated,
freed)
The allocated count represents
the number of memory chunks
allocated for use while encoding
access cache data for persistent
storage. The freed represents
the number of memory
chunks freed (after having been
allocated) while processing
access cache data for persistent
storage.
assist queue (queued, split mbufs, drop for EAGAIN) The queued is the number of NFS requests which are put on the assist queue. The "split mbufs" is the number of NFS requests in which data spans multiple mbufs. The "drop for EAGAIN" is the number of NFS requests which were put on the assist queue for servicing an access cache miss and for which name service errors resulted in the request being dropped.
NFS re-drive queue(curr, max, total) The curr is the number of NFS requests currently on the redrive queue, waiting to be processed. The max is the maximum number of NFS requests that were waiting on the re-drive queue at any given time. The total is the total number of NFS requests processed so far.
Direct NFS re-drive(memory, webNFS) Shows the number of NFS requests directly queued from the driver thread to the redrive queue. The memory is the number of the NFS requests queued up to the re-drive queue because of the failure of the non-blocking memory allocation. The webNFS is the number of webNFS requests put on the redrive queue.
Errors in the blocking export access check Shows the count of the errors received during blocking export access check.
RPCSEC_GSS context limit
The limit on the RPCSEC_GSS
context table. This limit is
defined via the
maximum context count
The maximum number of RPCSEC_GSS
contexts ever allocated
since the last boot. Note that
this value is not zeroed when
the -z option is used.
context reclaim callbacks
context idle/expired scans
vm pressure callbacks
Each of these three statistics
counts an asynchronous attempt
(callback) to reclaim least
recently used contexts from the
RPCSEC_GSS context table.
The "context reclaim callbacks" statistic counts the number of callbacks triggered by the RPCSEC_GSS subsystem, due to a deferred reclaim (because ONTAP could not suspend).
The "context idle/expired scans" statistic counts the number of periodic scans to look for expired or idle contexts. A context is considered idle if it has not been used for the number of seconds set in the nfs.rpcsec.ctx.idle option.
The "vm pressure callbacks" statistic counts the number of times the ONTAP VM subsystem asked the RPCSEC_GSS subsystem to release memory back to the system free list of memory.
contexts deleted due to context limit Counts the RPCSEC_GSS contexts deleted due to the current context count already being at the context limit whenever a new context needs to be created. The least recently used context will be deleted.
contexts deleted due to idle/expiration Counts the number of RPCSEC_GSS contexts deleted because the expired or were idle.
requests exceeding timeout
The number of NFS requests
which exceeded the timer set in
the option nfs.response.trig_ger.
nullrecv The number of times an RPC call was not available when it was thought to be received.
The server NFS display shows the number of NFS calls received (calls) and rejected (badcalls), and the counts and percentages for the various calls that were made.
Only a count is displayed for NULL and COMPOUND requests. Percentages are displayed for all operations received in COMPOUND requests relative to the total number of operations. The total calls displayed under the TCP, UDP and Server nfs headings represents the sum of all RPC requests received from NFSV2, NFSV3 and NFSV4 clients and do not take into account any operations in COMPOUND requests.
The -h and -l options display the combined client information for both the live filer and the failed filer.
The NFS statistics are cumulative. That is, a giveback operation does not zero out the NFS statistics. After giving back the failed filer's resources, the live filer does not subtract the statistics about NFS operations it performed on behalf of the failed filer when it was in takeover mode.
Copyright © 1994-2008 NetApp, Inc. Legal Information