]> granicus.if.org Git - sysstat/blobdiff - man/sar.in
A_IRQ: Update sar and sadf manual pages
[sysstat] / man / sar.in
index 6786c3d04d921dc0ba92ccac074c2aa40d93f83e..19b48133035c7c0a52d793d047ee8aced2ae0df6 100644 (file)
@@ -1,99 +1,99 @@
-.TH SAR 1 "NOVEMBER 2010" Linux "Linux User's Manual" -*- nroff -*-
+.\" sar manual page - (C) 1999-2022 Sebastien Godard (sysstat <at> orange.fr)
+.TH SAR 1 "JANUARY 2022" Linux "Linux User's Manual" -*- nroff -*-
 .SH NAME
 sar \- Collect, report, or save system activity information.
+
 .SH SYNOPSIS
-.B sar [ -A ] [ -b ] [ -B ] [ -C ] [ -d ] [ -h ] [ -H ] [ -i
-.I interval
-.B ] [ -p ] [ -q ] [ -r ] [ -R ] [ -S ] [ -t ] [ -u [ ALL ] ]
-[ -v ] [ -V ] [ -w ] [ -W ] [ -y ]
-.B [ -m {
-.I keyword
-.B [,...] | ALL } ]
-.B [ -n {
-.I keyword
-.B [,...] | ALL } ]
-.B [ -I {
-.I int
-.B [,...] | SUM | ALL | XALL } ] [ -P {
-.I cpu
-.B [,...] | ALL } ] [ -o [
-.I filename
-.B ] | -f [
-.I filename
-.B ] ] [ -s [
-.I hh:mm:ss
-.B ] ] [ -e [
-.I hh:mm:ss
-.B ] ] [
-.I interval
-.B [
-.I count
-.B ] ]
+.B sar [ -A ] [ -B ] [ -b ] [ -C ] [ -D ] [ -d ] [ -F [ MOUNT ] ] [ -H ] [ -h ] [ -p ]
+.B [ -r [ ALL ] ] [ -S ] [ -t ] [ -u [ ALL ] ] [ -V ] [ -v ] [ -W ] [ -w ] [ -y ] [ -z ]
+.B [ --dec={ 0 | 1 | 2 } ]
+.BI "[ --dev=" "dev_list " "] [ --fs=" "fs_list " "] [ --help ] [ --human ] [ --iface=" "iface_list"
+.BI "] [ --int=" "int_list " "] [ --pretty ] [ --sadc ] [ -I [ SUM | ALL ] ] [ -P { " "cpu_list"
+.B | ALL } ] [ -m {
+.IB "keyword" "[,...] | ALL } ] [ -n { " "keyword" "[,...] | ALL } ] [ -q [ " "keyword" "[,...] | ALL ] ]"
+.B [ -j { SID | ID | LABEL | PATH | UUID | ... } ]
+.BI "[ -f [ " "filename " "] | -o [ " "filename " "] | -[0-9]+ ]"
+.BI "[ -i " "interval " "] [ -s [ " "hh" ":" "mm" "[:" "ss" "]"
+.BI "] ] [ -e [ " "hh" ":" "mm" "[:" "ss" "] ] ] [ " "interval " "[ " "count " "] ]"
+
 .SH DESCRIPTION
-The
-.B sar
+.RB "The " "sar"
 command writes to standard output the contents of selected
 cumulative activity counters in the operating system. The accounting
 system, based on the values in the
-.I count
-and
-.I interval
+.IR "count " "and " "interval"
 parameters, writes information the specified number of times spaced
 at the specified intervals in seconds.
 If the
-.I interval
-parameter is set to zero, the
+.IR "interval " "parameter is set to zero, the"
 .B sar
 command displays the average statistics for the time
 since the system was started. If the
-.I interval
-parameter is specified without the
-.I count
+.IR "interval " "parameter is specified without the " "count"
 parameter, then reports are generated continuously.
 The collected data can also
 be saved in the file specified by the
-.B -o
-.I filename
+.BI "-o " "filename"
 flag, in addition to being displayed onto the screen. If
-.I filename
-is omitted, sar uses the standard system activity daily data file,
-the
-.IR @SA_DIR@/sa dd
-file, where the dd parameter indicates the current day.
+.IR "filename " "is omitted,"
+.B sar
+uses the standard system activity daily data file (see below).
 By default all the data available from the kernel are saved in the
 data file.
-
-The
-.B sar
+.PP
+.RB "The " "sar"
 command extracts and writes to standard output records previously
 saved in a file. This file can be either the one specified by the
 .B -f
 flag or, by default, the standard system activity daily data file.
-
-Without the
-.B -P
-flag, the
+It is also possible to enter
+.BR "-1" ", " "-2 " "etc. as an argument to " "sar"
+to display data of that days ago. For example,
+.BR "-1 " "will point at the standard system activity file of yesterday."
+.PP
+Standard system activity daily data files are named
+.IR "saDD " "or " "saYYYYMMDD" ", where"
+.IR "YYYY " "stands for the current year, " "MM " "for the current month and " "DD"
+for the current day. They are the default files used by
+.B sar
+only when no filename has been explicitly specified.
+When used to write data to files (with its option
+.BR "-o" "), " "sar"
+will use
+.I saYYYYMMDD
+.RB "if option " "-D"
+has also been specified, else it will use
+.IR "saDD" "."
+When used to display the records previously saved in a file,
 .B sar
+will look for the most recent of
+.IR "saDD " "and " "saYYYYMMDD" ", and use it."
+.PP
+Standard system activity daily data files are located in the
+.I @SA_DIR@
+directory by default. Yet it is possible to specify an alternate
+location for them: If a directory (instead of a plain file) is used
+with options
+.BR "-f " "or " "-o"
+then it will be considered as the directory containing the data files.
+.PP
+.RB "Without the " "-P " "flag, the " "sar"
 command reports system-wide (global among all processors) statistics,
 which are calculated as averages for values expressed as percentages,
 and as sums otherwise. If the
-.B -P
-flag is given, the
-.B sar
+.BR "-P " "flag is given, the " "sar"
 command reports activity which relates to the specified processor or
 processors. If
-.B -P ALL
-is given, the
-.B sar
+.BR "-P ALL " "is given, the " "sar"
 command reports statistics for each individual processor and global
-statistics among all processors.
-
+statistics among all processors. Offline processors are not displayed.
+.PP
 You can select information about specific system activities using
 flags. Not specifying any flags selects only CPU activity.
 Specifying the
 .B -A
 flag selects all possible activities.
-
+.PP
 The default version of the
 .B sar
 command (CPU utilization report) might be one of the first facilities
@@ -103,128 +103,58 @@ monitors major system resources. If CPU utilization is near 100 percent
 
 If multiple samples and multiple reports are desired, it is convenient
 to specify an output file for the
-.B sar
-command. 
-Run the
-.B sar
+.BR "sar " "command. Run the " "sar"
 command as a background process. The syntax for this is:
 
-.B sar -o datafile interval count >/dev/null 2>&1 &
+.BI "sar -o " "datafile interval count " ">/dev/null 2>&1 &"
 
-All data are captured in binary form and saved to a file (datafile).
+All data are captured in binary form and saved to a file
+.RI "(" "datafile" ")."
 The data can then be selectively displayed with the
-.B sar
-command using the
-.B -f
-option. Set the
-.I interval
-and
-.I count
-parameters to select
-.I count
-records at
-.I interval
-second intervals. If the
-.I count
-parameter is not set, all the records saved in the
-file will be selected.
+.BR "sar " "command using the " "-f " "option. Set the"
+.IR "interval " "and " "count " "parameters to select " "count " "records at " "interval"
+.RI "second intervals. If the " "count"
+parameter is not set, all the records saved in the file will be selected.
 Collection of data in this manner is useful to characterize
 system usage over a period of time and determine peak usage hours.
-
-Note:  The
-.B sar
+.PP
+.RB "Note: The " "sar"
 command only reports on local activities.
 
 .SH OPTIONS
-.IP -A
+.TP
+.B -A
 This is equivalent to specifying
-.BR "-bBdHqrRSuvwWy -I SUM -I XALL -m ALL -n ALL -u ALL -P ALL".
-.IP -b
-Report I/O and transfer rate statistics.
-The following values are displayed:
-
-.B tps
-.RS
-.RS
-Total number of transfers per second that were issued to physical devices.
-A transfer is an I/O request to a physical device. Multiple logical
-requests can be combined into a single I/O request to the device.
-A transfer is of indeterminate size.
-.RE
-
-.B rtps
-.RS
-Total number of read requests per second issued to physical devices.
-.RE
-
-.B wtps
-.RS
-Total number of write requests per second issued to physical devices.
-.RE
-
-.B bread/s
-.RS
-Total amount of data read from the devices in blocks per second.
-Blocks are equivalent to sectors
-and therefore have a size of 512 bytes.
-.RE
-
-.B bwrtn/s
-.RS
-Total amount of data written to devices in blocks per second.
-.RE
-.RE
-.IP -B
+.BR "-bBdFHISvwWy -m ALL -n ALL -q ALL -r ALL -u ALL" "."
+This option also implies specifying
+.B -I ALL -P ALL
+unless these options are explicitly set on the command line.
+.TP
+.B -B
 Report paging statistics.
 The following values are displayed:
-
-.B pgpgin/s
-.RS
 .RS
+.IP pgpgin/s
 Total number of kilobytes the system paged in from disk per second.
-.RE
-
-.B pgpgout/s
-.RS
+.IP pgpgout/s
 Total number of kilobytes the system paged out to disk per second.
-.RE
-
-.B fault/s
-.RS
+.IP fault/s
 Number of page faults (major + minor) made by the system per second.
 This is not a count of page faults that generate I/O, because some page
 faults can be resolved without I/O.
-.RE
-
-.B majflt/s
-.RS
+.IP majflt/s
 Number of major faults the system has made per second, those which
 have required loading a memory page from disk.
-.RE
-
-.B pgfree/s
-.RS
+.IP pgfree/s
 Number of pages placed on the free list by the system per second.
-.RE
-
-.B pgscank/s
-.RS
+.IP pgscank/s
 Number of pages scanned by the kswapd daemon per second.
-.RE
-
-.B pgscand/s
-.RS
+.IP pgscand/s
 Number of pages scanned directly per second.
-.RE
-
-.B pgsteal/s
-.RS
+.IP pgsteal/s
 Number of pages the system has reclaimed from cache (pagecache and
 swapcache) per second to satisfy its memory demands.
-.RE
-
-.B %vmeff
-.RS
+.IP %vmeff
 Calculated as pgsteal / pgscan, this is a metric of the efficiency of
 page reclaim. If it is near 100% then almost every page coming off the
 tail of the inactive list is being reaped. If it gets too low (e.g. less
@@ -232,573 +162,680 @@ than 30%) then the virtual memory is having some difficulty.
 This field is displayed as zero if no pages have been scanned during the
 interval of time.
 .RE
+.TP
+.B -b
+Report I/O and transfer rate statistics. The following values are displayed:
+.RS
+.IP tps
+Total number of transfers per second that were issued to physical devices.
+A transfer is an I/O request to a physical device. Multiple logical
+requests can be combined into a single I/O request to the device.
+A transfer is of indeterminate size.
+.IP rtps
+Total number of read requests per second issued to physical devices.
+.IP wtps
+Total number of write requests per second issued to physical devices.
+.IP dtps
+Total number of discard requests per second issued to physical devices.
+.IP bread/s
+Total amount of data read from the devices in blocks per second.
+Blocks are equivalent to sectors and therefore have a size of 512 bytes.
+.IP bwrtn/s
+Total amount of data written to devices in blocks per second.
+.IP bdscd/s
+Total amount of data discarded for devices in blocks per second.
 .RE
-.IP -C
+.TP
+.B -C
 When reading data from a file, tell
-.B sar
-to display comments that have been inserted by
-.BR sadc .
-.IP -d
+.BR "sar " "to display comments that have been inserted by " "sadc" "."
+.TP
+.B -D
+.RI "Use " "saYYYYMMDD " "instead of " "saDD"
+as the standard system activity daily data file name. This option
+works only when used in conjunction with option
+.BR "-o " "to save data to file."
+.TP
+.B -d
 Report activity for each block device.
-When data are displayed, the device specification
-.I dev m-n
-is generally used (
-.B DEV
-column).
-.B m
-is the major number of the device and
-.B n
-its minor number.
-Device names may also be pretty-printed if option -p
-is used (see below).
-Note that disk activity depends on sadc options "-S DISK" and "-S XDISK"
+When data are displayed, the device name is displayed as it
+(should) appear in
+.IR "/dev" "."
+.BR "sar " "uses data in"
+.IR "/sys " "to determine the device name based on its major and minor numbers."
+.RB "If this name resolution fails, " "sar " "will use name mapping controlled by"
+.IR "@SYSCONFIG_DIR@/sysstat.ioconf " "file."
+Persistent device names can also be printed if option
+.B -j
+is used (see below). Statistics for all devices are displayed unless
+a restricted list is specified using option
+.B --dev=
+(see corresponding option entry).
+Note that disk activity depends on
+.BR "sadc" "'s options " "-S DISK " "and " "-S XDISK"
 to be collected. The following values are displayed:
-
-.B tps
-.RS
-.RS
-Indicate the number of transfers per second that were issued to the device.
-Multiple logical requests can be combined into a single I/O request to the
-device. A transfer is of indeterminate size.
-.RE
-
-.B rd_sec/s
-.RS
-Number of sectors read from the device. The size of a sector is 512 bytes.
-.RE
-
-.B wr_sec/s
-.RS
-Number of sectors written to the device. The size of a sector is 512 bytes.
-.RE
-
-.B avgrq-sz
-.RS
-The average size (in sectors) of the requests that were issued to the device.
-.RE
-
-.B avgqu-sz
 .RS
+.IP tps
+Total number of transfers per second that were issued to physical devices.
+A transfer is an I/O request to a physical device. Multiple logical
+requests can be combined into a single I/O request to the device.
+A transfer is of indeterminate size.
+.IP rkB/s
+Number of kilobytes read from the device per second.
+.IP wkB/s
+Number of kilobytes written to the device per second.
+.IP dkB/s
+Number of kilobytes discarded for the device per second.
+.IP areq-sz
+The average size (in kilobytes) of the I/O requests that were issued to the device.
+.br
+Note: In previous versions, this field was known as avgrq-sz and was expressed in sectors.
+.IP aqu-sz
 The average queue length of the requests that were issued to the device.
-.RE
-
-.B await
-.RS
+.br
+Note: In previous versions, this field was known as avgqu-sz.
+.IP await
 The average time (in milliseconds) for I/O requests issued to the device
 to be served. This includes the time spent by the requests in queue and
 the time spent servicing them.
-.RE
-
-.B svctm
-.RS
-The average service time (in milliseconds) for I/O requests that were issued
-to the device. Warning! Do not trust this field any more. This field will be
-removed in a future sysstat version.
-.RE
-
-.B %util
-.RS
-Percentage of CPU time during which I/O requests were issued to the device
+.IP %util
+Percentage of elapsed time during which I/O requests were issued to the device
 (bandwidth utilization for the device). Device saturation occurs when this
-value is close to 100%.
-.RE
-.RE
-.IP "-e [ hh:mm:ss ]"
+value is close to 100% for devices serving requests serially. But for
+devices serving requests in parallel, such as RAID arrays and modern SSDs,
+this number does not reflect their performance limits.
+.RE
+.TP
+.B --dec={ 0 | 1 | 2 }
+Specify the number of decimal places to use (0 to 2, default value is 2).
+.TP
+.BI "--dev=" "dev_list"
+Specify the block devices for which statistics are to be displayed by
+.BR "sar" "."
+.IR "dev_list " "is a list of comma-separated device names."
+.TP
+.BI "-e [ " "hh" ":" "mm" "[:" "ss" "] ]"
 Set the ending time of the report. The default ending time is
 18:00:00. Hours must be given in 24-hour format.
 This option can be used when data are read from
 or written to a file (options
-.B -f
-or
-.B -o
-).
-.IP "-f [ filename ]"
-Extract records from
-.I filename
-(created by the
-.B -o filename
+.BR "-f " "or " "-o" ")."
+.TP
+.B -F [ MOUNT ]
+Display statistics for currently mounted filesystems. Pseudo-filesystems are
+ignored. At the end of the report,
+.B sar
+will display a summary of all those filesystems. Use of the
+.B MOUNT
+parameter keyword indicates that mountpoint will be reported instead of
+filesystem device. Statistics for all filesystems are displayed unless
+a restricted list is specified using option
+.B --fs=
+(see corresponding option entry).
+Note that filesystems statistics depend on
+.BR "sadc" "'s option " "-S XDISK "
+to be collected.
+
+The following values are displayed:
+.RS
+.IP MBfsfree
+Total amount of free space in megabytes (including space available only to privileged user).
+.IP MBfsused
+Total amount of space used in megabytes.
+.IP %fsused
+Percentage of filesystem space used, as seen by a privileged user.
+.IP %ufsused
+Percentage of filesystem space used, as seen by an unprivileged user.
+.IP Ifree
+Total number of free file nodes in filesystem.
+.IP Iused
+Total number of file nodes used in filesystem.
+.IP %Iused
+Percentage of file nodes used in filesystem.
+.RE
+.TP
+.BI "-f [ " "filename " "]"
+.RI "Extract records from " "filename " "(created by the"
+.BI "-o " "filename"
 flag). The default value of the
-.B filename
-parameter is the current daily data file, the
-.IR @SA_DIR@/sa dd
-file. The -f option is exclusive of the -o option.
-.IP -h
-Display a short help message then exit.
-.IP -H
+.I filename
+parameter is the current standard system activity daily data file. If
+.I filename
+is a directory instead of a plain file then it is considered as the
+directory where the standard system activity daily data files are
+located. Option
+.BR "-f " "is exclusive of option " "-o" "."
+.TP
+.BI "--fs=" "fs_list"
+Specify the filesystems for which statistics are to be displayed by
+.BR "sar" "."
+.I fs_list
+is a list of comma-separated filesystem names or mountpoints.
+.TP
+.B -H
 Report hugepages utilization statistics.
 The following values are displayed:
-
-.B kbhugfree
-.RS
 .RS
+.IP kbhugfree
 Amount of hugepages memory in kilobytes that is not yet allocated.
-.RE
-
-.B kbhugused
-.RS
+.IP kbhugused
 Amount of hugepages memory in kilobytes that has been allocated.
-.RE
-
-.B %hugused
-.RS
+.IP %hugused
 Percentage of total hugepages memory that has been allocated.
-.RE
-.RE
-.IP "-i interval"
-Select data records at seconds as close as possible to the number specified
-by the
-.I interval
-parameter.
-.IP "-I { int [,...] | SUM | ALL | XALL }"
-Report statistics for a given interrupt.
-.B int
-is the interrupt number. Specifying multiple
-.B -I int
-parameters on the command line will look at multiple independent interrupts.
-The
+.IP kbhugrsvd
+Amount of reserved hugepages memory in kilobytes.
+.IP kbhugsurp
+Amount of surplus hugepages memory in kilobytes.
+.RE
+.TP
+.B -h
+This option is equivalent to specifying
+.BR "--pretty --human" "."
+.TP
+.B --help
+Display a short help message then exit.
+.TP
+.B --human
+Print sizes in human readable format (e.g. 1.0k, 1.2M, etc.)
+The units displayed with this option supersede any other default units (e.g.
+kilobytes, sectors...) associated with the metrics.
+.TP
+.BI "-I [ SUM | ALL ]"
+Report statistics for interrupts. The values displayed are the number of interrupts
+per second for the given processor or among all processors.
+A list of interrupts can be specified using
+.B --int=
+(see this option). The
 .B SUM
 keyword indicates that the total number of interrupts received per second
 is to be displayed. The
 .B ALL
-keyword indicates that statistics from
-the first 16 interrupts are to be reported, whereas the
-.B XALL
-keyword indicates that statistics from all interrupts, including potential
-APIC interrupt sources, are to be reported.
-Note that interrupt statistics depend on sadc option "-S INT" to be collected.
-.IP "-m { keyword [,...] | ALL }"
+keyword indicates that statistics from all interrupts are to be reported
+(this is the default).
+Note that interrupts statistics depend on
+.BR "sadc" "'s option " "-S INT"
+to be collected.
+.TP
+.BI "-i " "interval"
+Select data records at seconds as close as possible to the number specified
+.RI "by the " "interval " "parameter."
+.TP
+.BI "--iface=" "iface_list"
+Specify the network interfaces for which statistics are to be displayed by
+.BR "sar" "."
+.I iface_list
+is a list of comma-separated interface names.
+.TP
+.BI "--int=" "int_list"
+Specify the interrupts names for which statistics are to be displayed by
+.BR "sar" "."
+.I int_list
+is a list of comma-separated values or range of values (e.g.,
+.BR "0-16,35,40-" ").
+.TP
+.B -j { SID | ID | LABEL | PATH | UUID | ... }
+Display persistent device names. Use this option in conjunction with option
+.BR "-d" ". Keywords " "ID" ", " "LABEL" ","
+etc. specify the type of the persistent name. These keywords are not limited,
+only prerequisite is that directory with required persistent names is present in
+.IR "/dev/disk" "."
+.RB "Keyword " "SID"
+tries to get a stable identifier to use as the device name. A stable
+identifier won't change across reboots for the same physical device. If it exists,
+this identifier is normally the WWN (World Wide Name) of the device, as read from the
+.IR "/dev/disk/by-id " "directory."
+.TP
+.BI "-m { " "keyword" "[,...] | ALL }"
 Report power management statistics.
-Note that these statistics depend on sadc option "-S POWER" to be collected.
+Note that these statistics depend on
+.BR "sadc" "'s option " "-S POWER " "to be collected."
 
 Possible keywords are
-.BR CPU ,
-.BR FAN ,
-.BR FREQ ,
-.BR IN
-and
-.BR TEMP .
+.BR "CPU" ", " "FAN" ", " "FREQ" ", " "IN" ", " "TEMP " "and " "USB" "."
 
-With the
-.B CPU
+.RB "With the " "CPU"
 keyword, statistics about CPU are reported.
 The following value is displayed:
-
-.B MHz
-.RS
 .RS
+.IP MHz
 Instantaneous CPU clock frequency in MHz.
 .RE
 
-With the
-.B FAN
+.IP
+.RB "With the " "FAN"
 keyword, statistics about fans speed are reported.
 The following values are displayed:
-
-.B rpm
 .RS
+.IP rpm
 Fan speed expressed in revolutions per minute.
-.RE
-
-.B drpm
-.RS
+.IP drpm
 This field is calculated as the difference between current fan speed (rpm)
 and its low limit (fan_min).
-.RE
-
-.B DEVICE
-.RS
+.IP DEVICE
 Sensor device name.
 .RE
 
-With the
-.B FREQ
+.IP
+.RB "With the " "FREQ"
 keyword, statistics about CPU clock frequency are reported.
 The following value is displayed:
-
-.B wghMHz
 .RS
+.IP wghMHz
 Weighted average CPU clock frequency in MHz.
 Note that the cpufreq-stats driver must be compiled in the
 kernel for this option to work.
 .RE
 
-With the
-.B IN
+.IP
+.RB "With the " "IN"
 keyword, statistics about voltage inputs are reported.
 The following values are displayed:
-
-.B inV
 .RS
+.IP inV
 Voltage input expressed in Volts.
-.RE
-
-.B %in
-.RS
+.IP %in
 Relative input value. A value of 100% means that
 voltage input has reached its high limit (in_max) whereas
 a value of 0% means that it has reached its low limit (in_min).
-.RE
-
-.B DEVICE
-.RS
+.IP DEVICE
 Sensor device name.
 .RE
 
-With the
-.B TEMP
+.IP
+.RB "With the " "TEMP"
 keyword, statistics about devices temperature are reported.
 The following values are displayed:
-
-.B degC
 .RS
+.IP degC
 Device temperature expressed in degrees Celsius.
-.RE
-
-.B %temp
-.RS
+.IP %temp
 Relative device temperature. A value of 100% means that
 temperature has reached its high limit (temp_max).
+.IP DEVICE
+Sensor device name.
 .RE
 
-.B DEVICE
+.IP
+.RB "With the " "USB " "keyword, the " "sar"
+command takes a snapshot of all the USB devices currently plugged into
+the system. At the end of the report,
+.B sar
+will display a summary of all those USB devices.
+The following values are displayed:
 .RS
-Sensor device name.
-.RE
-.RE
-.IP "-n { keyword [,...] | ALL }"
+.IP BUS
+Root hub number of the USB device.
+.IP idvendor
+Vendor ID number (assigned by USB organization).
+.IP idprod
+Product ID number (assigned by Manufacturer).
+.IP maxpower
+Maximum power consumption of the device (expressed in mA).
+.IP manufact
+Manufacturer name.
+.IP product
+Product name.
+.RE
+
+.IP
+.RB "The " "ALL"
+keyword is equivalent to specifying all the keywords above and therefore all the power
+management statistics are reported.
+.TP
+.BI "-n { " "keyword" "[,...] | ALL }"
 Report network statistics.
 
 Possible keywords are
-.BR DEV ,
-.BR EDEV ,
-.BR NFS ,
-.BR NFSD ,
-.BR SOCK ,
-.BR IP ,
-.BR EIP ,
-.BR ICMP ,
-.BR EICMP ,
-.BR TCP ,
-.BR ETCP ,
-.BR UDP ,
-.BR SOCK6 ,
-.BR IP6 ,
-.BR EIP6 ,
-.BR ICMP6 ,
-.BR EICMP6
-and
-.BR UDP6 .
+.BR "DEV" ", " "EDEV" ", " "FC" ", " "ICMP" ", " "EICMP" ", " "ICMP6" ", " "EICMP6" ","
+.BR "IP" ", " "EIP" ", " "IP6" ", " "EIP6" ", " "NFS" ", " "NFSD" ", " "SOCK" ", " "SOCK6" ","
+.BR "SOFT" ", " "TCP" ", " "ETCP" ", " "UDP " "and " "UDP6" "."
 
-With the
-.B DEV
+.RB "With the " "DEV"
 keyword, statistics from the network devices are reported.
+Statistics for all network interfaces are displayed unless
+a restricted list is specified using option
+.B --iface=
+(see corresponding option entry).
 The following values are displayed:
-
-.B IFACE
-.RS
 .RS
+.IP IFACE
 Name of the network interface for which statistics are reported.
-.RE
-
-.B rxpck/s
-.RS
+.IP rxpck/s
 Total number of packets received per second.
-.RE
-
-.B txpck/s
-.RS
+.IP txpck/s
 Total number of packets transmitted per second.
-.RE
-
-.B rxkB/s
-.RS
+.IP rxkB/s
 Total number of kilobytes received per second.
-.RE
-
-.B txkB/s
-.RS
+.IP txkB/s
 Total number of kilobytes transmitted per second.
-.RE
-
-.B rxcmp/s
-.RS
+.IP rxcmp/s
 Number of compressed packets received per second (for cslip etc.).
-.RE
-
-.B txcmp/s
-.RS
+.IP txcmp/s
 Number of compressed packets transmitted per second.
-.RE
-
-.B rxmcst/s
-.RS
+.IP rxmcst/s
 Number of multicast packets received per second.
+.IP %ifutil
+Utilization percentage of the network interface. For half-duplex interfaces,
+utilization is calculated using the sum of rxkB/s and txkB/s as a percentage
+of the interface speed. For full-duplex, this is the greater of rxkB/S or txkB/s.
 .RE
 
-With the
-.B EDEV
+.IP
+.RB "With the " "EDEV"
 keyword, statistics on failures (errors) from the network devices are reported.
+Statistics for all network interfaces are displayed unless
+a restricted list is specified using option
+.B --iface=
+(see corresponding option entry).
 The following values are displayed:
-
-.B IFACE
 .RS
+.IP IFACE
 Name of the network interface for which statistics are reported.
-.RE
-
-.B rxerr/s
-.RS
+.IP rxerr/s
 Total number of bad packets received per second.
-.RE
-
-.B txerr/s
-.RS
+.IP txerr/s
 Total number of errors that happened per second while transmitting packets.
-.RE
-
-.B coll/s
-.RS
+.IP coll/s
 Number of collisions that happened per second while transmitting packets.
-.RE
-
-.B rxdrop/s
-.RS
+.IP rxdrop/s
 Number of received packets dropped per second because of a lack of space in linux buffers.
-.RE
-
-.B txdrop/s
-.RS
+.IP txdrop/s
 Number of transmitted packets dropped per second because of a lack of space in linux buffers.
-.RE
-
-.B txcarr/s
-.RS
+.IP txcarr/s
 Number of carrier-errors that happened per second while transmitting packets.
-.RE
-
-.B rxfram/s
-.RS
+.IP rxfram/s
 Number of frame alignment errors that happened per second on received packets.
-.RE
-
-.B rxfifo/s
-.RS
+.IP rxfifo/s
 Number of FIFO overrun errors that happened per second on received packets.
-.RE
-
-.B txfifo/s
-.RS
+.IP txfifo/s
 Number of FIFO overrun errors that happened per second on transmitted packets.
 .RE
 
-With the
-.B NFS
-keyword, statistics about NFS client activity are reported.
+.IP
+.RB "With the " "FC"
+keyword, statistics about fibre channel traffic are reported.
+Note that fibre channel statistics depend on
+.BR "sadc" "'s option " "-S DISK"
+to be collected.
 The following values are displayed:
-
-.B call/s
-.RS
-Number of RPC requests made per second.
-.RE
-
-.B retrans/s
-.RS
-Number of RPC requests per second, those which needed to be retransmitted (for
-example because of a server timeout).
-.RE
-
-.B read/s
-.RS
-Number of 'read' RPC calls made per second.
-.RE
-
-.B write/s
 .RS
-Number of 'write' RPC calls made per second.
+.IP FCHOST
+Name of the fibre channel host bus adapter (HBA) interface for which statistics are reported.
+.IP fch_rxf/s
+The total number of frames received per second.
+.IP fch_txf/s
+The total number of frames transmitted per second.
+.IP fch_rxw/s
+The total number of transmission words received per second.
+.IP fch_txw/s
+The total number of transmission words transmitted per second.
 .RE
 
-.B access/s
+.IP
+.RB "With the " "ICMP"
+keyword, statistics about ICMPv4 network traffic are reported.
+Note that ICMPv4 statistics depend on
+.BR "sadc" "'s option " "-S SNMP"
+to be collected.
+The following values are displayed (formal SNMP names between
+square brackets):
 .RS
-Number of 'access' RPC calls made per second.
+.IP imsg/s
+The total number of ICMP messages which the entity
+received per second [icmpInMsgs].
+Note that this counter includes all those counted by ierr/s.
+.IP omsg/s
+The total number of ICMP messages which this entity
+attempted to send per second [icmpOutMsgs].
+Note that this counter includes all those counted by oerr/s.
+.IP iech/s
+The number of ICMP Echo (request) messages received per second [icmpInEchos].
+.IP iechr/s
+The number of ICMP Echo Reply messages received per second [icmpInEchoReps].
+.IP oech/s
+The number of ICMP Echo (request) messages sent per second [icmpOutEchos].
+.IP oechr/s
+The number of ICMP Echo Reply messages sent per second [icmpOutEchoReps].
+.IP itm/s
+The number of ICMP Timestamp (request) messages received per second [icmpInTimestamps].
+.IP itmr/s
+The number of ICMP Timestamp Reply messages received per second [icmpInTimestampReps].
+.IP otm/s
+The number of ICMP Timestamp (request) messages sent per second [icmpOutTimestamps].
+.IP otmr/s
+The number of ICMP Timestamp Reply messages sent per second [icmpOutTimestampReps].
+.IP iadrmk/s
+The number of ICMP Address Mask Request messages received per second [icmpInAddrMasks].
+.IP iadrmkr/s
+The number of ICMP Address Mask Reply messages received per second [icmpInAddrMaskReps].
+.IP oadrmk/s
+The number of ICMP Address Mask Request messages sent per second [icmpOutAddrMasks].
+.IP oadrmkr/s
+The number of ICMP Address Mask Reply messages sent per second [icmpOutAddrMaskReps].
 .RE
 
-.B getatt/s
+.IP
+.RB "With the " "EICMP"
+keyword, statistics about ICMPv4 error messages are reported.
+Note that ICMPv4 statistics depend on
+.BR "sadc" "'s option " "-S SNMP"
+to be collected.
+The following values are displayed (formal SNMP names between
+square brackets):
 .RS
-Number of 'getattr' RPC calls made per second.
-.RE
-
-With the
-.B NFSD
-keyword, statistics about NFS server activity are reported.
-The following values are displayed:
-
-.B scall/s
-.RS
-Number of RPC requests received per second.
-.RE
-
-.B badcall/s
-.RS
-Number of bad RPC requests received per second, those whose
-processing generated an error.
-.RE
-
-.B packet/s
-.RS
-Number of network packets received per second.
-.RE
-
-.B udp/s
-.RS
-Number of UDP packets received per second.
-.RE
-
-.B tcp/s
-.RS
-Number of TCP packets received per second.
-.RE
-
-.B hit/s
-.RS
-Number of reply cache hits per second.
-.RE
-
-.B miss/s
-.RS
-Number of reply cache misses per second.
-.RE
-
-.B sread/s
-.RS
-Number of 'read' RPC calls received per second.
-.RE
-
-.B swrite/s
-.RS
-Number of 'write' RPC calls received per second.
-.RE
-
-.B saccess/s
-.RS
-Number of 'access' RPC calls received per second.
-.RE
-
-.B sgetatt/s
-.RS
-Number of 'getattr' RPC calls received per second.
-.RE
-
-With the
-.B SOCK
-keyword, statistics on sockets in use are reported
-(IPv4).
-The following values are displayed:
-
-.B totsck
-.RS
-Total number of sockets used by the system.
-.RE
-
-.B tcpsck
-.RS
-Number of TCP sockets currently in use.
-.RE
-
-.B udpsck
-.RS
-Number of UDP sockets currently in use.
-.RE
-
-.B rawsck
-.RS
-Number of RAW sockets currently in use.
+.IP ierr/s
+The number of ICMP messages per second which the entity received but
+determined as having ICMP-specific errors (bad ICMP
+checksums, bad length, etc.) [icmpInErrors].
+.IP oerr/s
+The number of ICMP messages per second which this entity did not send
+due to problems discovered within ICMP such as a lack of buffers [icmpOutErrors].
+.IP idstunr/s
+The number of ICMP Destination Unreachable messages
+received per second [icmpInDestUnreachs].
+.IP odstunr/s
+The number of ICMP Destination Unreachable messages sent per second [icmpOutDestUnreachs].
+.IP itmex/s
+The number of ICMP Time Exceeded messages received per second [icmpInTimeExcds].
+.IP otmex/s
+The number of ICMP Time Exceeded messages sent per second [icmpOutTimeExcds].
+.IP iparmpb/s
+The number of ICMP Parameter Problem messages received per second [icmpInParmProbs].
+.IP oparmpb/s
+The number of ICMP Parameter Problem messages sent per second [icmpOutParmProbs].
+.IP isrcq/s
+The number of ICMP Source Quench messages received per second [icmpInSrcQuenchs].
+.IP osrcq/s
+The number of ICMP Source Quench messages sent per second [icmpOutSrcQuenchs].
+.IP iredir/s
+The number of ICMP Redirect messages received per second [icmpInRedirects].
+.IP oredir/s
+The number of ICMP Redirect messages sent per second [icmpOutRedirects].
 .RE
 
-.B ip-frag
+.IP
+.RB "With the " "ICMP6"
+keyword, statistics about ICMPv6 network traffic are reported.
+Note that ICMPv6 statistics depend on
+.BR "sadc" "'s option " "-S IPV6"
+to be collected.
+The following values are displayed (formal SNMP names between
+square brackets):
 .RS
-Number of IP fragments currently in use.
+.IP imsg6/s
+The total number of ICMP messages received
+by the interface per second which includes all those
+counted by ierr6/s [ipv6IfIcmpInMsgs].
+.IP omsg6/s
+The total number of ICMP messages which this
+interface attempted to send per second [ipv6IfIcmpOutMsgs].
+.IP iech6/s
+The number of ICMP Echo (request) messages
+received by the interface per second [ipv6IfIcmpInEchos].
+.IP iechr6/s
+The number of ICMP Echo Reply messages received
+by the interface per second [ipv6IfIcmpInEchoReplies].
+.IP oechr6/s
+The number of ICMP Echo Reply messages sent
+by the interface per second [ipv6IfIcmpOutEchoReplies].
+.IP igmbq6/s
+The number of ICMPv6 Group Membership Query
+messages received by the interface per second
+[ipv6IfIcmpInGroupMembQueries].
+.IP igmbr6/s
+The number of ICMPv6 Group Membership Response messages
+received by the interface per second
+[ipv6IfIcmpInGroupMembResponses].
+.IP ogmbr6/s
+The number of ICMPv6 Group Membership Response
+messages sent per second
+[ipv6IfIcmpOutGroupMembResponses].
+.IP igmbrd6/s
+The number of ICMPv6 Group Membership Reduction messages
+received by the interface per second
+[ipv6IfIcmpInGroupMembReductions].
+.IP ogmbrd6/s
+The number of ICMPv6 Group Membership Reduction
+messages sent per second
+[ipv6IfIcmpOutGroupMembReductions].
+.IP irtsol6/s
+The number of ICMP Router Solicit messages
+received by the interface per second
+[ipv6IfIcmpInRouterSolicits].
+.IP ortsol6/s
+The number of ICMP Router Solicitation messages
+sent by the interface per second
+[ipv6IfIcmpOutRouterSolicits].
+.IP irtad6/s
+The number of ICMP Router Advertisement messages
+received by the interface per second
+[ipv6IfIcmpInRouterAdvertisements].
+.IP inbsol6/s
+The number of ICMP Neighbor Solicit messages
+received by the interface per second
+[ipv6IfIcmpInNeighborSolicits].
+.IP onbsol6/s
+The number of ICMP Neighbor Solicitation
+messages sent by the interface per second
+[ipv6IfIcmpOutNeighborSolicits].
+.IP inbad6/s
+The number of ICMP Neighbor Advertisement
+messages received by the interface per second
+[ipv6IfIcmpInNeighborAdvertisements].
+.IP onbad6/s
+The number of ICMP Neighbor Advertisement
+messages sent by the interface per second
+[ipv6IfIcmpOutNeighborAdvertisements].
 .RE
 
-.B tcp-tw
+.IP
+.RB "With the " "EICMP6"
+keyword, statistics about ICMPv6 error messages are reported.
+Note that ICMPv6 statistics depend on
+.BR "sadc" "'s option " "-S IPV6"
+to be collected.
+The following values are displayed (formal SNMP names between
+square brackets):
 .RS
-Number of TCP sockets in TIME_WAIT state.
+.IP ierr6/s
+The number of ICMP messages per second which the interface
+received but determined as having ICMP-specific
+errors (bad ICMP checksums, bad length, etc.)
+[ipv6IfIcmpInErrors]
+.IP idtunr6/s
+The number of ICMP Destination Unreachable
+messages received by the interface per second
+[ipv6IfIcmpInDestUnreachs].
+.IP odtunr6/s
+The number of ICMP Destination Unreachable
+messages sent by the interface per second
+[ipv6IfIcmpOutDestUnreachs].
+.IP itmex6/s
+The number of ICMP Time Exceeded messages
+received by the interface per second
+[ipv6IfIcmpInTimeExcds].
+.IP otmex6/s
+The number of ICMP Time Exceeded messages sent
+by the interface per second
+[ipv6IfIcmpOutTimeExcds].
+.IP iprmpb6/s
+The number of ICMP Parameter Problem messages
+received by the interface per second
+[ipv6IfIcmpInParmProblems].
+.IP oprmpb6/s
+The number of ICMP Parameter Problem messages
+sent by the interface per second
+[ipv6IfIcmpOutParmProblems].
+.IP iredir6/s
+The number of Redirect messages received
+by the interface per second
+[ipv6IfIcmpInRedirects].
+.IP oredir6/s
+The number of Redirect messages sent by
+the interface by second
+[ipv6IfIcmpOutRedirects].
+.IP ipck2b6/s
+The number of ICMP Packet Too Big messages
+received by the interface per second
+[ipv6IfIcmpInPktTooBigs].
+.IP opck2b6/s
+The number of ICMP Packet Too Big messages sent
+by the interface per second
+[ipv6IfIcmpOutPktTooBigs].
 .RE
 
-With the
-.B IP
+.IP
+.RB "With the " "IP"
 keyword, statistics about IPv4 network traffic are reported.
-Note that IPv4 statistics depend on sadc option "-S SNMP" to be
-collected.
+Note that IPv4 statistics depend on
+.BR "sadc" "'s option " "-S SNMP"
+to be collected.
 The following values are displayed (formal SNMP names between
 square brackets):
-
-.B irec/s
 .RS
+.IP irec/s
 The total number of input datagrams received from interfaces
 per second, including those received in error [ipInReceives].
-.RE
-
-.B fwddgm/s
-.RS
+.IP fwddgm/s
 The number of input datagrams per second, for which this entity was not
 their final IP destination, as a result of which an attempt
 was made to find a route to forward them to that final
 destination [ipForwDatagrams].
-.RE
-
-.B idel/s
-.RS
+.IP idel/s
 The total number of input datagrams successfully delivered per second
 to IP user-protocols (including ICMP) [ipInDelivers].
-.RE
-
-.B orq/s
-.RS
+.IP orq/s
 The total number of IP datagrams which local IP user-protocols (including ICMP)
 supplied per second to IP in requests for transmission [ipOutRequests].
 Note that this counter does not include any datagrams counted in fwddgm/s.
-.RE
-
-.B asmrq/s
-.RS
+.IP asmrq/s
 The number of IP fragments received per second which needed to be
 reassembled at this entity [ipReasmReqds].
-.RE
-
-.B asmok/s
-.RS
+.IP asmok/s
 The number of IP datagrams successfully re-assembled per second [ipReasmOKs].
-.RE
-
-.B fragok/s
-.RS
+.IP fragok/s
 The number of IP datagrams that have been successfully
 fragmented at this entity per second [ipFragOKs].
-.RE
-
-.B fragcrt/s
-.RS
+.IP fragcrt/s
 The number of IP datagram fragments that have been
 generated per second as a result of fragmentation at this entity [ipFragCreates].
 .RE
 
-With the
-.B EIP
+.IP
+.RB "With the " "EIP"
 keyword, statistics about IPv4 network errors are reported.
-Note that IPv4 statistics depend on sadc option "-S SNMP" to be
-collected.
+Note that IPv4 statistics depend on
+.BR "sadc" "'s option " "-S SNMP"
+to be collected.
 The following values are displayed (formal SNMP names between
 square brackets):
-
-.B ihdrerr/s
 .RS
+.IP ihdrerr/s
 The number of input datagrams discarded per second due to errors in
 their IP headers, including bad checksums, version number
 mismatch, other format errors, time-to-live exceeded, errors
 discovered in processing their IP options, etc. [ipInHdrErrors]
-.RE
-
-.B iadrerr/s
-.RS
+.IP iadrerr/s
 The number of input datagrams discarded per second because the IP
 address in their IP header's destination field was not a
 valid address to be received at this entity. This count
@@ -807,444 +844,108 @@ unsupported Classes (e.g., Class E). For entities which are
 not IP routers and therefore do not forward datagrams, this
 counter includes datagrams discarded because the destination
 address was not a local address [ipInAddrErrors].
-.RE
-
-.B iukwnpr/s
-.RS
+.IP iukwnpr/s
 The number of locally-addressed datagrams received
 successfully but discarded per second because of an unknown or
 unsupported protocol [ipInUnknownProtos].
-.RE
-
-.B idisc/s
-.RS
+.IP idisc/s
 The number of input IP datagrams per second for which no problems were
 encountered to prevent their continued processing, but which
 were discarded (e.g., for lack of buffer space) [ipInDiscards].
 Note that this counter does not include any datagrams discarded while
 awaiting re-assembly.
-.RE
-
-.B odisc/s
-.RS
+.IP odisc/s
 The number of output IP datagrams per second for which no problem was
 encountered to prevent their transmission to their
-destination, but which were discarded (e.g., for lack of
-buffer space) [ipOutDiscards].
-Note that this counter would include
-datagrams counted in fwddgm/s if any such packets met
-this (discretionary) discard criterion.
-.RE
-
-.B onort/s
-.RS
-The number of IP datagrams discarded per second because no route could
-be found to transmit them to their destination [ipOutNoRoutes].
-Note that this counter includes any packets counted in fwddgm/s
-which meet this 'no-route' criterion.
-Note that this includes any datagrams which a host cannot route because all
-of its default routers are down.
-.RE
-
-.B asmf/s
-.RS
-The number of failures detected per second by the IP re-assembly
-algorithm (for whatever reason: timed out, errors, etc) [ipReasmFails].
-Note that this is not necessarily a count of discarded IP
-fragments since some algorithms can lose track of the number of
-fragments by combining them as they are received.
-.RE
-
-.B fragf/s
-.RS
-The number of IP datagrams that have been discarded per second because
-they needed to be fragmented at this entity but could not
-be, e.g., because their Don't Fragment flag was set [ipFragFails].
-.RE
-
-With the
-.B ICMP
-keyword, statistics about ICMPv4 network traffic are reported.
-Note that ICMPv4 statistics depend on sadc option "-S SNMP" to be
-collected.
-The following values are displayed (formal SNMP names between
-square brackets):
-
-.B imsg/s
-.RS
-The total number of ICMP messages which the entity
-received per second [icmpInMsgs].
-Note that this counter includes all those counted by ierr/s.
-.RE
-
-.B omsg/s
-.RS
-The total number of ICMP messages which this entity
-attempted to send per second [icmpOutMsgs].
-Note that this counter includes all those counted by oerr/s.
-.RE
-
-.B iech/s
-.RS
-The number of ICMP Echo (request) messages received per second [icmpInEchos].
-.RE
-
-.B iechr/s
-.RS
-The number of ICMP Echo Reply messages received per second [icmpInEchoReps].
-.RE
-
-.B oech/s
-.RS
-The number of ICMP Echo (request) messages sent per second [icmpOutEchos].
-.RE
-
-.B oechr/s
-.RS
-The number of ICMP Echo Reply messages sent per second [icmpOutEchoReps].
-.RE
-
-.B itm/s
-.RS
-The number of ICMP Timestamp (request) messages received per second [icmpInTimestamps].
-.RE
-
-.B itmr/s
-.RS
-The number of ICMP Timestamp Reply messages received per second [icmpInTimestampReps].
-.RE
-
-.B otm/s
-.RS
-The number of ICMP Timestamp (request) messages sent per second [icmpOutTimestamps].
-.RE
-
-.B otmr/s
-.RS
-The number of ICMP Timestamp Reply messages sent per second [icmpOutTimestampReps].
-.RE
-
-.B iadrmk/s
-.RS
-The number of ICMP Address Mask Request messages received per second [icmpInAddrMasks].
-.RE
-
-.B iadrmkr/s
-.RS
-The number of ICMP Address Mask Reply messages received per second [icmpInAddrMaskReps].
-.RE
-
-.B oadrmk/s
-.RS
-The number of ICMP Address Mask Request messages sent per second [icmpOutAddrMasks].
-.RE
-
-.B oadrmkr/s
-.RS
-The number of ICMP Address Mask Reply messages sent per second [icmpOutAddrMaskReps].
-.RE
-
-With the
-.B EICMP
-keyword, statistics about ICMPv4 error messages are reported.
-Note that ICMPv4 statistics depend on sadc option "-S SNMP" to be
-collected.
-The following values are displayed (formal SNMP names between
-square brackets):
-
-.B ierr/s
-.RS
-The number of ICMP messages per second which the entity received but
-determined as having ICMP-specific errors (bad ICMP
-checksums, bad length, etc.) [icmpInErrors].
-.RE
-
-.B oerr/s
-.RS
-The number of ICMP messages per second which this entity did not send
-due to problems discovered within ICMP such as a lack of buffers [icmpOutErrors].
-.RE
-
-.B idstunr/s
-.RS
-The number of ICMP Destination Unreachable messages
-received per second [icmpInDestUnreachs].
-.RE
-
-.B odstunr/s
-.RS
-The number of ICMP Destination Unreachable messages sent per second [icmpOutDestUnreachs].
-.RE
-
-.B itmex/s
-.RS
-The number of ICMP Time Exceeded messages received per second [icmpInTimeExcds].
-.RE
-
-.B otmex/s
-.RS
-The number of ICMP Time Exceeded messages sent per second [icmpOutTimeExcds].
-.RE
-
-.B iparmpb/s
-.RS
-The number of ICMP Parameter Problem messages received per second [icmpInParmProbs].
-.RE
-
-.B oparmpb/s
-.RS
-The number of ICMP Parameter Problem messages sent per second [icmpOutParmProbs].
-.RE
-
-.B isrcq/s
-.RS
-The number of ICMP Source Quench messages received per second [icmpInSrcQuenchs].
-.RE
-
-.B osrcq/s
-.RS
-The number of ICMP Source Quench messages sent per second [icmpOutSrcQuenchs].
-.RE
-
-.B iredir/s
-.RS
-The number of ICMP Redirect messages received per second [icmpInRedirects].
-.RE
-
-.B oredir/s
-.RS
-The number of ICMP Redirect messages sent per second [icmpOutRedirects].
-.RE
-
-With the
-.B TCP
-keyword, statistics about TCPv4 network traffic are reported.
-Note that TCPv4 statistics depend on sadc option "-S SNMP" to be
-collected.
-The following values are displayed (formal SNMP names between
-square brackets):
-
-.B active/s
-.RS
-The number of times TCP connections have made a direct
-transition to the SYN-SENT state from the CLOSED state per second [tcpActiveOpens].
-.RE
-
-.B passive/s
-.RS
-The number of times TCP connections have made a direct
-transition to the SYN-RCVD state from the LISTEN state per second [tcpPassiveOpens].
-.RE
-
-.B iseg/s
-.RS
-The total number of segments received per second, including those
-received in error [tcpInSegs].  This count includes segments received on
-currently established connections.
-.RE
-
-.B oseg/s
-.RS
-The total number of segments sent per second, including those on
-current connections but excluding those containing only
-retransmitted octets [tcpOutSegs].
-.RE
-
-With the
-.B ETCP
-keyword, statistics about TCPv4 network errors are reported.
-Note that TCPv4 statistics depend on sadc option "-S SNMP" to be
-collected.
-The following values are displayed (formal SNMP names between
-square brackets):
-
-.B atmptf/s
-.RS
-The number of times per second TCP connections have made a direct
-transition to the CLOSED state from either the SYN-SENT
-state or the SYN-RCVD state, plus the number of times per second TCP
-connections have made a direct transition to the LISTEN
-state from the SYN-RCVD state [tcpAttemptFails].
-.RE
-
-.B estres/s
-.RS
-The number of times per second TCP connections have made a direct
-transition to the CLOSED state from either the ESTABLISHED
-state or the CLOSE-WAIT state [tcpEstabResets].
-.RE
-
-.B retrans/s
-.RS
-The total number of segments retransmitted per second - that is, the
-number of TCP segments transmitted containing one or more
-previously transmitted octets [tcpRetransSegs].
-.RE
-
-.B isegerr/s
-.RS
-The total number of segments received in error (e.g., bad
-TCP checksums) per second [tcpInErrs].
-.RE
-
-.B orsts/s
-.RS
-The number of TCP segments sent per second containing the RST flag [tcpOutRsts].
-.RE
-
-With the
-.B UDP
-keyword, statistics about UDPv4 network traffic are reported.
-Note that UDPv4 statistics depend on sadc option "-S SNMP" to be
-collected.
-The following values are displayed (formal SNMP names between
-square brackets):
-
-.B idgm/s
-.RS
-The total number of UDP datagrams delivered per second to UDP users [udpInDatagrams].
-.RE
-
-.B odgm/s
-.RS
-The total number of UDP datagrams sent per second from this entity [udpOutDatagrams].
-.RE
-
-.B noport/s
-.RS
-The total number of received UDP datagrams per second for which there
-was no application at the destination port [udpNoPorts].
-.RE
-
-.B idgmerr/s
-.RS
-The number of received UDP datagrams per second that could not be
-delivered for reasons other than the lack of an application
-at the destination port [udpInErrors].
-.RE
-
-With the
-.B SOCK6
-keyword, statistics on sockets in use are reported (IPv6).
-Note that IPv6 statistics depend on sadc option "-S IPV6" to be
-collected.
-The following values are displayed:
-
-.B tcp6sck
-.RS
-Number of TCPv6 sockets currently in use.
-.RE
-
-.B udp6sck
-.RS
-Number of UDPv6 sockets currently in use.
-.RE
-
-.B raw6sck
-.RS
-Number of RAWv6 sockets currently in use.
-.RE
-
-.B ip6-frag
-.RS
-Number of IPv6 fragments currently in use.
+destination, but which were discarded (e.g., for lack of
+buffer space) [ipOutDiscards].
+Note that this counter would include
+datagrams counted in fwddgm/s if any such packets met
+this (discretionary) discard criterion.
+.IP onort/s
+The number of IP datagrams discarded per second because no route could
+be found to transmit them to their destination [ipOutNoRoutes].
+Note that this counter includes any packets counted in fwddgm/s
+which meet this 'no-route' criterion.
+Note that this includes any datagrams which a host cannot route because all
+of its default routers are down.
+.IP asmf/s
+The number of failures detected per second by the IP re-assembly
+algorithm (for whatever reason: timed out, errors, etc) [ipReasmFails].
+Note that this is not necessarily a count of discarded IP
+fragments since some algorithms can lose track of the number of
+fragments by combining them as they are received.
+.IP fragf/s
+The number of IP datagrams that have been discarded per second because
+they needed to be fragmented at this entity but could not
+be, e.g., because their Don't Fragment flag was set [ipFragFails].
 .RE
 
-With the
-.B IP6
+.IP
+.RB "With the " "IP6"
 keyword, statistics about IPv6 network traffic are reported.
-Note that IPv6 statistics depend on sadc option "-S IPV6" to be
-collected.
+Note that IPv6 statistics depend on
+.BR "sadc" "'s option " "-S IPV6"
+to be collected.
 The following values are displayed (formal SNMP names between
 square brackets):
-
-.B irec6/s
 .RS
+.IP irec6/s
 The total number of input datagrams received from
 interfaces per second, including those received in error
 [ipv6IfStatsInReceives].
-.RE
-
-.B fwddgm6/s
-.RS
+.IP fwddgm6/s
 The number of output datagrams per second which this
 entity received and forwarded to their final
 destinations [ipv6IfStatsOutForwDatagrams].
-.RE
-
-.B idel6/s
-.RS
+.IP idel6/s
 The total number of datagrams successfully
 delivered per second to IPv6 user-protocols (including ICMP)
 [ipv6IfStatsInDelivers].
-.RE
-
-.B orq6/s
-.RS
+.IP orq6/s
 The total number of IPv6 datagrams which local IPv6
 user-protocols (including ICMP) supplied per second to IPv6 in
 requests for transmission [ipv6IfStatsOutRequests].
 Note that this counter
 does not include any datagrams counted in fwddgm6/s.
-.RE
-
-.B asmrq6/s
-.RS
+.IP asmrq6/s
 The number of IPv6 fragments received per second which needed
 to be reassembled at this interface [ipv6IfStatsReasmReqds].
-.RE
-
-.B asmok6/s
-.RS
+.IP asmok6/s
 The number of IPv6 datagrams successfully
 reassembled per second [ipv6IfStatsReasmOKs].
-.RE
-
-.B imcpck6/s
-.RS
+.IP imcpck6/s
 The number of multicast packets received per second
 by the interface [ipv6IfStatsInMcastPkts].
-.RE
-
-.B omcpck6/s
-.RS
+.IP omcpck6/s
 The number of multicast packets transmitted per second
 by the interface [ipv6IfStatsOutMcastPkts].
-.RE
-
-.B fragok6/s
-.RS
+.IP fragok6/s
 The number of IPv6 datagrams that have been
 successfully fragmented at this output interface per second
 [ipv6IfStatsOutFragOKs].
-.RE
-
-.B fragcr6/s
-.RS
+.IP fragcr6/s
 The number of output datagram fragments that have
 been generated per second as a result of fragmentation at
 this output interface [ipv6IfStatsOutFragCreates].
 .RE
 
-With the
-.B EIP6
+.IP
+.RB "With the " "EIP6"
 keyword, statistics about IPv6 network errors are reported.
-Note that IPv6 statistics depend on sadc option "-S IPV6" to be
-collected.
+Note that IPv6 statistics depend on
+.BR "sadc" "'s option " "-S IPV6"
+to be collected.
 The following values are displayed (formal SNMP names between
 square brackets):
-
-.B ihdrer6/s
 .RS
+.IP ihdrer6/s
 The number of input datagrams discarded per second due to
 errors in their IPv6 headers, including version
 number mismatch, other format errors, hop count
 exceeded, errors discovered in processing their
 IPv6 options, etc. [ipv6IfStatsInHdrErrors]
-.RE
-
-.B iadrer6/s
-.RS
+.IP iadrer6/s
 The number of input datagrams discarded per second because
 the IPv6 address in their IPv6 header's destination
 field was not a valid address to be received at
@@ -1255,24 +956,15 @@ entities which are not IPv6 routers and therefore
 do not forward datagrams, this counter includes
 datagrams discarded because the destination address
 was not a local address [ipv6IfStatsInAddrErrors].
-.RE
-
-.B iukwnp6/s
-.RS
+.IP iukwnp6/s
 The number of locally-addressed datagrams
 received successfully but discarded per second because of an
 unknown or unsupported protocol [ipv6IfStatsInUnknownProtos].
-.RE
-
-.B i2big6/s
-.RS
+.IP i2big6/s
 The number of input datagrams that could not be
 forwarded per second because their size exceeded the link MTU
 of outgoing interface [ipv6IfStatsInTooBigErrors].
-.RE
-
-.B idisc6/s
-.RS
+.IP idisc6/s
 The number of input IPv6 datagrams per second for which no
 problems were encountered to prevent their
 continued processing, but which were discarded
@@ -1280,10 +972,7 @@ continued processing, but which were discarded
 [ipv6IfStatsInDiscards]. Note that this
 counter does not include any datagrams discarded
 while awaiting re-assembly.
-.RE
-
-.B odisc6/s
-.RS
+.IP odisc6/s
 The number of output IPv6 datagrams per second for which no
 problem was encountered to prevent their
 transmission to their destination, but which were
@@ -1292,716 +981,709 @@ discarded (e.g., for lack of buffer space)
 that this counter would include datagrams counted
 in fwddgm6/s if any such packets
 met this (discretionary) discard criterion.
-.RE
-
-.B inort6/s
-.RS
+.IP inort6/s
 The number of input datagrams discarded per second because no
 route could be found to transmit them to their
 destination [ipv6IfStatsInNoRoutes].
-.RE
-
-.B onort6/s
-.RS
+.IP onort6/s
 The number of locally generated IP datagrams discarded per second
 because no route could be found to transmit them to their
 destination [unknown formal SNMP name].
-.RE
-
-.B asmf6/s
-.RS
+.IP asmf6/s
 The number of failures detected per second by the IPv6
 re-assembly algorithm (for whatever reason: timed
 out, errors, etc.) [ipv6IfStatsReasmFails].
-Note that this is not
-necessarily a count of discarded IPv6 fragments
-since some algorithms
+Note that this is not necessarily a count of discarded
+IPv6 fragments since some algorithms
 can lose track of the number of fragments
 by combining them as they are received.
-.RE
-
-.B fragf6/s
-.RS
+.IP fragf6/s
 The number of IPv6 datagrams that have been
 discarded per second because they needed to be fragmented
 at this output interface but could not be
 [ipv6IfStatsOutFragFails].
-.RE
-
-.B itrpck6/s
-.RS
+.IP itrpck6/s
 The number of input datagrams discarded per second because
 datagram frame didn't carry enough data
 [ipv6IfStatsInTruncatedPkts].
 .RE
 
-With the
-.B ICMP6
-keyword, statistics about ICMPv6 network traffic are reported.
-Note that ICMPv6 statistics depend on sadc option "-S IPV6" to be
-collected.
-The following values are displayed (formal SNMP names between
-square brackets):
-
-.B imsg6/s
-.RS
-The total number of ICMP messages received
-by the interface per second which includes all those
-counted by ierr6/s [ipv6IfIcmpInMsgs].
-.RE
-
-.B omsg6/s
-.RS
-The total number of ICMP messages which this
-interface attempted to send per second [ipv6IfIcmpOutMsgs].
-.RE
-
-.B iech6/s
-.RS
-The number of ICMP Echo (request) messages
-received by the interface per second [ipv6IfIcmpInEchos].
-.RE
-
-.B iechr6/s
-.RS
-The number of ICMP Echo Reply messages received
-by the interface per second [ipv6IfIcmpInEchoReplies].
-.RE
-
-.B oechr6/s
-.RS
-The number of ICMP Echo Reply messages sent
-by the interface per second [ipv6IfIcmpOutEchoReplies].
-.RE
-
-.B igmbq6/s
-.RS
-The number of ICMPv6 Group Membership Query
-messages received by the interface per second
-[ipv6IfIcmpInGroupMembQueries].
-.RE
-
-.B igmbr6/s
-.RS
-The number of ICMPv6 Group Membership Response messages
-received by the interface per second
-[ipv6IfIcmpInGroupMembResponses].
-.RE
-
-.B ogmbr6/s
-.RS
-The number of ICMPv6 Group Membership Response
-messages sent per second
-[ipv6IfIcmpOutGroupMembResponses].
-.RE
-
-.B igmbrd6/s
-.RS
-The number of ICMPv6 Group Membership Reduction messages
-received by the interface per second
-[ipv6IfIcmpInGroupMembReductions].
-.RE
-
-.B ogmbrd6/s
-.RS
-The number of ICMPv6 Group Membership Reduction
-messages sent per second
-[ipv6IfIcmpOutGroupMembReductions].
-.RE
-
-.B irtsol6/s
-.RS
-The number of ICMP Router Solicit messages
-received by the interface per second
-[ipv6IfIcmpInRouterSolicits].
-.RE
-
-.B ortsol6/s
-.RS
-The number of ICMP Router Solicitation messages
-sent by the interface per second
-[ipv6IfIcmpOutRouterSolicits].
-.RE
-
-.B irtad6/s
+.IP
+.RB "With the " "NFS"
+keyword, statistics about NFS client activity are reported.
+The following values are displayed:
 .RS
-The number of ICMP Router Advertisement messages
-received by the interface per second
-[ipv6IfIcmpInRouterAdvertisements].
+.IP call/s
+Number of RPC requests made per second.
+.IP retrans/s
+Number of RPC requests per second, those which needed to be retransmitted
+(for example because of a server timeout).
+.IP read/s
+Number of 'read' RPC calls made per second.
+.IP write/s
+Number of 'write' RPC calls made per second.
+.IP access/s
+Number of 'access' RPC calls made per second.
+.IP getatt/s
+Number of 'getattr' RPC calls made per second.
 .RE
 
-.B inbsol6/s
+.IP
+.RB "With the " "NFSD"
+keyword, statistics about NFS server activity are reported.
+The following values are displayed:
 .RS
-The number of ICMP Neighbor Solicit messages
-received by the interface per second
-[ipv6IfIcmpInNeighborSolicits].
+.IP scall/s
+Number of RPC requests received per second.
+.IP badcall/s
+Number of bad RPC requests received per second, those whose
+processing generated an error.
+.IP packet/s
+Number of network packets received per second.
+.IP udp/s
+Number of UDP packets received per second.
+.IP tcp/s
+Number of TCP packets received per second.
+.IP hit/s
+Number of reply cache hits per second.
+.IP miss/s
+Number of reply cache misses per second.
+.IP sread/s
+Number of 'read' RPC calls received per second.
+.IP swrite/s
+Number of 'write' RPC calls received per second.
+.IP saccess/s
+Number of 'access' RPC calls received per second.
+.IP sgetatt/s
+Number of 'getattr' RPC calls received per second.
 .RE
 
-.B onbsol6/s
+.IP
+.RB "With the " "SOCK"
+keyword, statistics on sockets in use are reported (IPv4).
+The following values are displayed:
 .RS
-The number of ICMP Neighbor Solicitation
-messages sent by the interface per second
-[ipv6IfIcmpOutNeighborSolicits].
+.IP totsck
+Total number of sockets used by the system.
+.IP tcpsck
+Number of TCP sockets currently in use.
+.IP udpsck
+Number of UDP sockets currently in use.
+.IP rawsck
+Number of RAW sockets currently in use.
+.IP ip-frag
+Number of IP fragments currently in queue.
+.IP tcp-tw
+Number of TCP sockets in TIME_WAIT state.
 .RE
 
-.B inbad6/s
+.IP
+.RB "With the " "SOCK6"
+keyword, statistics on sockets in use are reported (IPv6).
+Note that IPv6 statistics depend on
+.BR "sadc" "'s option " "-S IPV6"
+to be collected.
+The following values are displayed:
 .RS
-The number of ICMP Neighbor Advertisement
-messages received by the interface per second
-[ipv6IfIcmpInNeighborAdvertisements].
+.IP tcp6sck
+Number of TCPv6 sockets currently in use.
+.IP udp6sck
+Number of UDPv6 sockets currently in use.
+.IP raw6sck
+Number of RAWv6 sockets currently in use.
+.IP ip6-frag
+Number of IPv6 fragments currently in use.
 .RE
 
-.B onbad6/s
+.IP
+.RB "With the " "SOFT"
+keyword, statistics about software-based network processing are reported.
+The following values are displayed:
 .RS
-The number of ICMP Neighbor Advertisement
-messages sent by the interface per second
-[ipv6IfIcmpOutNeighborAdvertisements].
-.RE
-
-With the
-.B EICMP6
-keyword, statistics about ICMPv6 error messages are reported.
-Note that ICMPv6 statistics depend on sadc option "-S IPV6" to be
-collected.
+.IP total/s
+The total number of network frames processed per second.
+.IP dropd/s
+The total number of network frames dropped per second because there
+was no room on the processing queue.
+.IP squeezd/s
+The number of times the softirq handler function terminated per second
+because its budget was consumed or the time limit was reached, but more
+work could have been done.
+.IP rx_rps/s
+The number of times the CPU has been woken up per second
+to process packets via an inter-processor interrupt.
+.IP flw_lim/s
+The number of times the flow limit has been reached per second.
+Flow limiting is an optional RPS feature that can be used to limit the number of
+packets queued to the backlog for each flow to a certain amount.
+This can help ensure that smaller flows are processed even though
+much larger flows are pushing packets in.
+.RE
+
+.IP
+.RB "With the " "TCP"
+keyword, statistics about TCPv4 network traffic are reported.
+Note that TCPv4 statistics depend on
+.BR "sadc" "'s option " "-S SNMP"
+to be collected.
 The following values are displayed (formal SNMP names between
 square brackets):
-
-.B ierr6/s
-.RS
-The number of ICMP messages per second which the interface
-received but determined as having ICMP-specific
-errors (bad ICMP checksums, bad length, etc.)
-[ipv6IfIcmpInErrors]
-.RE
-
-.B idtunr6/s
-.RS
-The number of ICMP Destination Unreachable
-messages received by the interface per second
-[ipv6IfIcmpInDestUnreachs].
-.RE
-
-.B odtunr6/s
-.RS
-The number of ICMP Destination Unreachable
-messages sent by the interface per second
-[ipv6IfIcmpOutDestUnreachs].
-.RE
-
-.B itmex6/s
-.RS
-The number of ICMP Time Exceeded messages
-received by the interface per second
-[ipv6IfIcmpInTimeExcds].
-.RE
-
-.B otmex6/s
-.RS
-The number of ICMP Time Exceeded messages sent
-by the interface per second
-[ipv6IfIcmpOutTimeExcds].
-.RE
-
-.B iprmpb6/s
-.RS
-The number of ICMP Parameter Problem messages
-received by the interface per second
-[ipv6IfIcmpInParmProblems].
-.RE
-
-.B oprmpb6/s
-.RS
-The number of ICMP Parameter Problem messages
-sent by the interface per second
-[ipv6IfIcmpOutParmProblems].
-.RE
-
-.B iredir6/s
-.RS
-The number of Redirect messages received
-by the interface per second
-[ipv6IfIcmpInRedirects].
-.RE
-
-.B oredir6/s
 .RS
-The number of Redirect messages sent by
-the interface by second
-[ipv6IfIcmpOutRedirects].
+.IP active/s
+The number of times TCP connections have made a direct
+transition to the SYN-SENT state from the CLOSED state per second [tcpActiveOpens].
+.IP passive/s
+The number of times TCP connections have made a direct
+transition to the SYN-RCVD state from the LISTEN state per second [tcpPassiveOpens].
+.IP iseg/s
+The total number of segments received per second, including those
+received in error [tcpInSegs].  This count includes segments received on
+currently established connections.
+.IP oseg/s
+The total number of segments sent per second, including those on
+current connections but excluding those containing only
+retransmitted octets [tcpOutSegs].
 .RE
 
-.B ipck2b6/s
+.IP
+.RB "With the " "ETCP"
+keyword, statistics about TCPv4 network errors are reported.
+Note that TCPv4 statistics depend on
+.BR "sadc" "'s option " "-S SNMP"
+to be collected.
+The following values are displayed (formal SNMP names between
+square brackets):
 .RS
-The number of ICMP Packet Too Big messages
-received by the interface per second
-[ipv6IfIcmpInPktTooBigs].
+.IP atmptf/s
+The number of times per second TCP connections have made a direct
+transition to the CLOSED state from either the SYN-SENT
+state or the SYN-RCVD state, plus the number of times per second TCP
+connections have made a direct transition to the LISTEN
+state from the SYN-RCVD state [tcpAttemptFails].
+.IP estres/s
+The number of times per second TCP connections have made a direct
+transition to the CLOSED state from either the ESTABLISHED
+state or the CLOSE-WAIT state [tcpEstabResets].
+.IP retrans/s
+The total number of segments retransmitted per second - that is, the
+number of TCP segments transmitted containing one or more
+previously transmitted octets [tcpRetransSegs].
+.IP isegerr/s
+The total number of segments received in error (e.g., bad
+TCP checksums) per second [tcpInErrs].
+.IP orsts/s
+The number of TCP segments sent per second containing the RST flag [tcpOutRsts].
 .RE
 
-.B opck2b6/s
+.IP
+.RB "With the " "UDP"
+keyword, statistics about UDPv4 network traffic are reported.
+Note that UDPv4 statistics depend on
+.BR "sadc" "'s option " "-S SNMP"
+to be collected.
+The following values are displayed (formal SNMP names between
+square brackets):
 .RS
-The number of ICMP Packet Too Big messages sent
-by the interface per second
-[ipv6IfIcmpOutPktTooBigs].
+.IP idgm/s
+The total number of UDP datagrams delivered per second to UDP users [udpInDatagrams].
+.IP odgm/s
+The total number of UDP datagrams sent per second from this entity [udpOutDatagrams].
+.IP noport/s
+The total number of received UDP datagrams per second for which there
+was no application at the destination port [udpNoPorts].
+.IP idgmerr/s
+The number of received UDP datagrams per second that could not be
+delivered for reasons other than the lack of an application
+at the destination port [udpInErrors].
 .RE
 
-With the
-.B UDP6
+.IP
+.RB "With the " "UDP6"
 keyword, statistics about UDPv6 network traffic are reported.
-Note that UDPv6 statistics depend on sadc option "-S IPV6" to be
-collected.
+Note that UDPv6 statistics depend on
+.BR "sadc" "'s option " "-S IPV6"
+to be collected.
 The following values are displayed (formal SNMP names between
 square brackets):
-
-.B idgm6/s
 .RS
+.IP idgm6/s
 The total number of UDP datagrams delivered per second to UDP users
 [udpInDatagrams].
-.RE
-
-.B odgm6/s
-.RS
+.IP odgm6/s
 The total number of UDP datagrams sent per second from this
 entity [udpOutDatagrams].
-.RE
-
-.B noport6/s
-.RS
+.IP noport6/s
 The total number of received UDP datagrams per second for which there
 was no application at the destination port [udpNoPorts].
-.RE
-
-.B idgmer6/s
-.RS
+.IP idgmer6/s
 The number of received UDP datagrams per second that could not be
 delivered for reasons other than the lack of an application
 at the destination port [udpInErrors].
 .RE
 
-The
-.B ALL
+.IP
+.RB "The " "ALL"
 keyword is equivalent to specifying all the keywords above and therefore all the network
 activities are reported.
-.RE
-.RE
-.IP "-o [ filename ]"
+.TP
+.BI "-o [ " "filename " "]"
 Save the readings in the file in binary form. Each reading
 is in a separate record. The default value of the
-.B filename
-parameter is the current daily data file, the
-.IR @SA_DIR@/sa dd
-file. The -o option is exclusive of the -f option.
+.I filename
+parameter is the current standard system activity daily data file. If
+.I filename
+is a directory instead of a plain file then it is considered as the directory
+where the standard system activity daily data files are located. Option
+.BR "-o " "is exclusive of option " "-f" "."
 All the data available from the kernel are saved in the file (in fact,
-.B sar
-calls its data collector
-.B sadc
-with the option "-S ALL". See sadc(8) manual page).
-.IP "-P { cpu [,...] | ALL }"
+.BR "sar " "calls its data collector " "sadc " "with the option " "-S ALL" "."
+.RB "See " "sadc" "(8) manual page)."
+.TP
+.BI "-P { " "cpu_list " "| ALL }"
 Report per-processor statistics for the specified processor or processors.
+.I cpu_list
+is a list of comma-separated values or range of values (e.g.,
+.BR "0,2,4-7,12-" ")."
+Note that processor 0 is the first processor, and processor
+.B all
+is the global average among all processors.
 Specifying the
 .B ALL
 keyword reports statistics for each individual processor, and globally for
-all processors.
-Note that processor 0 is the first processor.
-.IP -p
-Pretty-print device names. Use this option in conjunction with option -d.
-By default names are printed as
-.B dev m-n
-where m and n are the major and minor numbers for the device.
-Use of this option displays the names of the devices as they (should) appear
-in /dev. Name mappings are controlled by
-.B @SYSCONFIG_DIR@/sysstat.ioconf.
-.IP -q
-Report queue length and load averages. The following values are displayed:
+all processors. Offline processors are not displayed.
+.TP
+.BR "-p" ", " "--pretty"
+Make reports easier to read by a human.
+This option may be especially useful when displaying e.g., network interfaces
+or block devices statistics.
+.TP
+.BI "-q [ " "keyword" "[,...] | ALL ]"
+Report system load and pressure-stall statistics.
 
-.B runq-sz
+Possible keywords are
+.BR "CPU" ", " "IO" ", " "LOAD" ", " "MEM " "and "PSI" "."
+
+.RB "With the " "CPU"
+keyword, CPU pressure statistics are reported.
+The following values are displayed:
 .RS
+.IP %scpu-10
+Percentage of the time that at least some runnable tasks were delayed because the CPU
+was unavailable to them, over the last 10 second window.
+.IP %scpu-60
+Percentage of the time that at least some runnable tasks were delayed because the CPU
+was unavailable to them, over the last 60 second window.
+.IP %scpu-300
+Percentage of the time that at least some runnable tasks were delayed because the CPU
+was unavailable to them, over the last 300 second window.
+.IP %scpu
+Percentage of the time that at least some runnable tasks were delayed because the CPU
+was unavailable to them, over the last time interval.
+.RE
+
+.IP
+.RB "With the " "IO"
+keyword, I/O pressure statistics are reported.
+The following values are displayed:
 .RS
-Run queue length (number of tasks waiting for run time). 
-.RE
-
-.B plist-sz
+.IP %sio-10
+Percentage of the time that at least some tasks lost waiting for I/O,
+over the last 10 second window.
+.IP %sio-60
+Percentage of the time that at least some tasks lost waiting for I/O,
+over the last 60 second window.
+.IP %sio-300
+Percentage of the time that at least some tasks lost waiting for I/O,
+over the last 300 second window.
+.IP %sio
+Percentage of the time that at least some tasks lost waiting for I/O,
+over the last time interval.
+.IP %fio-10
+Percentage of the time during which all non-idle tasks were stalled
+waiting for I/O, over the last 10 second window.
+.IP %fio-60
+Percentage of the time during which all non-idle tasks were stalled
+waiting for I/O, over the last 60 second window.
+.IP %fio-300
+Percentage of the time during which all non-idle tasks were stalled
+waiting for I/O, over the last 300 second window.
+.IP %fio
+Percentage of the time during which all non-idle tasks were stalled
+waiting for I/O, over the last time interval.
+.RE
+
+.IP
+.RB "With the " "LOAD"
+keyword, queue length and load averages statistics are reported.
+The following values are displayed:
 .RS
+.IP runq-sz
+Run queue length (number of tasks running or waiting for run time).
+.IP plist-sz
 Number of tasks in the task list.
-.RE
-
-.B ldavg-1
-.RS
+.IP ldavg-1
 System load average for the last minute.
 The load average is calculated as the average number of runnable or
 running tasks (R state), and the number of tasks in uninterruptible
 sleep (D state) over the specified interval.
-.RE
-
-.B ldavg-5
-.RS
+.IP ldavg-5
 System load average for the past 5 minutes.
-.RE
-
-.B ldavg-15
-.RS
+.IP ldavg-15
 System load average for the past 15 minutes.
+.IP blocked
+Number of tasks currently blocked, waiting for I/O to complete.
 .RE
-.RE
-.IP -r
-Report memory utilization statistics.
-The following values are displayed:
 
-.B kbmemfree
+.IP
+.RB "With the " "MEM"
+keyword, memory pressure statistics are reported.
+The following values are displayed:
 .RS
+.IP %smem-10
+Percentage of the time during which at least some tasks were waiting
+for memory resources, over the last 10 second window.
+.IP %smem-60
+Percentage of the time during which at least some tasks were waiting
+for memory resources, over the last 60 second window.
+.IP %smem-300
+Percentage of the time during which at least some tasks were waiting
+for memory resources, over the last 300 second window.
+.IP %smem
+Percentage of the time during which at least some tasks were waiting
+for memory resources, over the last time interval.
+.IP %fmem-10
+Percentage of the time during which all non-idle tasks were stalled
+waiting for memory resources, over the last 10 second window.
+.IP %fmem-60
+Percentage of the time during which all non-idle tasks were stalled
+waiting for memory resources, over the last 60 second window.
+.IP %fmem-300
+Percentage of the time during which all non-idle tasks were stalled
+waiting for memory resources, over the last 300 second window.
+.IP %fmem
+Percentage of the time during which all non-idle tasks were stalled
+waiting for memory resources, over the last time interval.
+.RE
+
+.IP
+.RB "The " "PSI"
+keyword is equivalent to specifying CPU, IO and MEM keywords together
+and therefore all the pressure-stall statistics are reported.
+
+.RB "The " "ALL"
+keyword is equivalent to specifying all the keywords above
+and therefore all the statistics are reported.
+.TP
+.B -r [ ALL ]
+Report memory utilization statistics. The
+.B ALL
+keyword indicates that all the memory fields should be displayed.
+The following values may be displayed:
 .RS
+.IP kbmemfree
 Amount of free memory available in kilobytes.
-.RE
-
-.B kbmemused
-.RS
-Amount of used memory in kilobytes. This does not take into account memory
-used by the kernel itself.
-.RE
-
-.B %memused
-.RS
+.IP kbavail
+Estimate of how much memory in kilobytes is available for starting new
+applications, without swapping.
+The estimate takes into account that the system needs some page cache to
+function well, and that not all reclaimable slab will be reclaimable,
+due to items being in use. The impact of those factors will vary from
+system to system.
+.IP kbmemused
+Amount of used memory in kilobytes (calculated as total installed memory -
+kbmemfree - kbbuffers - kbcached - kbslab).
+.IP %memused
 Percentage of used memory.
-.RE
-
-.B kbbuffers
-.RS
+.IP kbbuffers
 Amount of memory used as buffers by the kernel in kilobytes.
-.RE
-
-.B kbcached
-.RS
+.IP kbcached
 Amount of memory used to cache data by the kernel in kilobytes.
-.RE
-
-.B kbcommit
-.RS
-Amount of memory in kilobytes needed for current workload. This is an estimate of how much
+.IP kbcommit
+Amount of memory in kilobytes needed for current workload.
+This is an estimate of how much
 RAM/swap is needed to guarantee that there never is out of memory.
-.RE
-
-.B %commit
-.RS
-Percentage of memory needed for current workload in relation to the total amount of memory (RAM+swap).
-This number may be greater than 100% because the kernel usually overcommits memory.
-
-.RE
-.RE
-.IP -R
-Report memory statistics. The following values are displayed:
-
-.B frmpg/s
-.RS
-.RS
-Number of memory pages freed by the system per second.
-A negative value represents a number of pages allocated by the system.
-Note that a page has a size of 4 kB or 8 kB according to the machine architecture.
-.RE
-
-.B bufpg/s
-.RS
-Number of additional memory pages used as buffers by the system per second.
-A negative value means fewer pages used as buffers by the system.
-.RE
-
-.B campg/s
-.RS
-Number of additional memory pages cached by the system per second.
-A negative value means fewer pages in the cache.
-.RE
-.RE
-.IP "-s [ hh:mm:ss ]"
-Set the starting time of the data, causing the
-.B sar
-command to extract records time-tagged at, or following, the time
-specified. The default starting time is 08:00:00.
-Hours must be given in 24-hour format. This option can be
-used only when data are read from a file (option
-.B -f
-).
-.IP -S
+.IP %commit
+Percentage of memory needed for current workload in relation to the
+total amount of memory (RAM+swap). This number may be greater
+than 100% because the kernel usually overcommits memory.
+.IP kbactive
+Amount of active memory in kilobytes (memory that has been used more recently
+and usually not reclaimed unless absolutely necessary).
+.IP kbinact
+Amount of inactive memory in kilobytes (memory which has been less recently
+used. It is more eligible to be reclaimed for other purposes).
+.IP kbdirty
+Amount of memory in kilobytes waiting to get written back to the disk.
+.IP kbanonpg
+Amount of non-file backed pages in kilobytes mapped into userspace page tables.
+.IP kbslab
+Amount of memory in kilobytes used by the kernel to cache data structures
+for its own use.
+.IP kbkstack
+Amount of memory in kilobytes used for kernel stack space.
+.IP kbpgtbl
+Amount of memory in kilobytes dedicated to the lowest level of page tables.
+.IP kbvmused
+Amount of memory in kilobytes of used virtual address space.
+.RE
+.TP
+.B -S
 Report swap space utilization statistics.
 The following values are displayed:
-
-.B kbswpfree
-.RS
 .RS
+.IP kbswpfree
 Amount of free swap space in kilobytes.
-.RE
-
-.B kbswpused
-.RS
+.IP kbswpused
 Amount of used swap space in kilobytes.
-.RE
-
-.B %swpused
-.RS
+.IP %swpused
 Percentage of used swap space.
-.RE
-
-.B kbswpcad
-.RS
+.IP kbswpcad
 Amount of cached swap memory in kilobytes.
-This is memory that once was swapped out, is swapped back in
-but still also is in the swap area (if memory is needed it doesn't need
-to be swapped out again because it is already in the swap area. This
-saves I/O).
-.RE
-
-.B %swpcad
-.RS
+This is memory that once was swapped out, is swapped back in but still also
+is in the swap area (if memory is needed it doesn't need to be swapped out
+again because it is already in the swap area. This saves I/O).
+.IP %swpcad
 Percentage of cached swap memory in relation to the amount of used swap space.
 .RE
-.RE
-.IP -t
+.TP
+.BI "-s [ " "hh" ":" "mm" "[:" "ss" "] ]"
+Set the starting time of the data, causing the
+.B sar
+command to extract records time-tagged at, or following, the time
+specified. The default starting time is 08:00:00.
+Hours must be given in 24-hour format. This option can be
+used only when data are read from a file (option
+.BR "-f" ")."
+.TP
+.B --sadc
+Indicate which data collector is called by
+.BR "sar" "."
+If the data collector is sought in
+.B PATH
+then enter "which sadc" to know where it is located.
+.TP
+.B -t
 When reading data from a daily data file, indicate that
 .B sar
-should display the timestamps in the original locale time of
+should display the timestamps in the original local time of
 the data file creator. Without this option, the
 .B sar
 command displays the timestamps in the user's locale time.
-.IP "-u [ ALL ]"
+.TP
+.B -u [ ALL ]
 Report CPU utilization. The
 .B ALL
 keyword indicates that all the CPU fields should be displayed.
 The report may show the following fields:
-
-.B %user
-.RS
 .RS
+.IP %user
 Percentage of CPU utilization that occurred while executing at the user
 level (application). Note that this field includes time spent running
 virtual processors.
-.RE
-
-.B %usr
-.RS
+.IP %usr
 Percentage of CPU utilization that occurred while executing at the user
 level (application). Note that this field does NOT include time spent
 running virtual processors.
-.RE
-
-.B %nice
-.RS
+.IP %nice
 Percentage of CPU utilization that occurred while executing at the user
 level with nice priority.
-.RE
-
-.B %system
-.RS
+.IP %system
 Percentage of CPU utilization that occurred while executing at the system
 level (kernel). Note that this field includes time spent servicing
 hardware and software interrupts.
-.RE
-
-.B %sys
-.RS
+.IP %sys
 Percentage of CPU utilization that occurred while executing at the system
 level (kernel). Note that this field does NOT include time spent servicing
 hardware or software interrupts.
-.RE
-
-.B %iowait
-.RS
+.IP %iowait
 Percentage of time that the CPU or CPUs were idle during which
 the system had an outstanding disk I/O request.
-.RE
-
-.B %steal
-.RS
+.IP %steal
 Percentage of time spent in involuntary wait by the virtual CPU
 or CPUs while the hypervisor was servicing another virtual processor.
-.RE
-
-.B %irq
-.RS
+.IP %irq
 Percentage of time spent by the CPU or CPUs to service hardware interrupts.
-.RE
-
-.B %soft
-.RS
+.IP %soft
 Percentage of time spent by the CPU or CPUs to service software interrupts.
-.RE
-
-.B %guest
-.RS
+.IP %guest
 Percentage of time spent by the CPU or CPUs to run a virtual processor.
-.RE
-
-.B %idle
-.RS
+.IP %gnice
+Percentage of time spent by the CPU or CPUs to run a niced guest.
+.IP %idle
 Percentage of time that the CPU or CPUs were idle and the system
 did not have an outstanding disk I/O request.
 .RE
-
-Note: On SMP machines a processor that does not have any activity at all
-(0.00 for every field) is a disabled (offline) processor.
-.RE
-.IP -v
+.TP
+.B -V
+Print version number then exit.
+.TP
+.B -v
 Report status of inode, file and other kernel tables.
 The following values are displayed:
-
-.B dentunusd
-.RS
 .RS
+.IP dentunusd
 Number of unused cache entries in the directory cache.
-.RE
-
-.B file-nr
-.RS
+.IP file-nr
 Number of file handles used by the system.
-.RE
-
-.B inode-nr
-.RS
+.IP inode-nr
 Number of inode handlers used by the system.
-.RE
-
-.B pty-nr
-.RS
+.IP pty-nr
 Number of pseudo-terminals used by the system.
 .RE
-.RE
-.IP -V
-Print version number then exit.
-.IP -w
-Report task creation and system switching activity.
-
-.B proc/s
-.RS
-.RS
-Total number of tasks created per second.
-.RE
-
-.B cswch/s
-.RS
-Total number of context switches per second.
-.RE
-.RE
-.IP -W
+.TP
+.B -W
 Report swapping statistics. The following values are displayed:
-
-.B pswpin/s
-.RS
 .RS
+.IP pswpin/s
 Total number of swap pages the system brought in per second.
-.RE
-
-.B pswpout/s
-.RS
+.IP pswpout/s
 Total number of swap pages the system brought out per second.
 .RE
-.RE
-.IP -y
-Report TTY device activity. The following values are displayed:
-
-.B rcvin/s
-.RS
+.TP
+.B -w
+Report task creation and system switching activity.
+The following values are displayed:
 .RS
-Number of receive interrupts per second for current serial line. Serial line number
-is given in the TTY column.
+.IP proc/s
+Total number of tasks created per second.
+.IP cswch/s
+Total number of context switches per second.
 .RE
-
-.B xmtin/s
+.TP
+.B -y
+Report TTY devices activity. The following values are displayed:
 .RS
+.IP rcvin/s
+Number of receive interrupts per second for current serial line.
+Serial line number is given in the TTY column.
+.IP xmtin/s
 Number of transmit interrupts per second for current serial line.
-.RE
-
-.B framerr/s
-.RS
+.IP framerr/s
 Number of frame errors per second for current serial line.
-.RE
-
-.B prtyerr/s
-.RS
+.IP prtyerr/s
 Number of parity errors per second for current serial line.
-.RE
-
-.B brk/s
-.RS
+.IP brk/s
 Number of breaks per second for current serial line.
-.RE
-
-.B ovrun/s
-.RS
+.IP ovrun/s
 Number of overrun errors per second for current serial line.
 .RE
-.RE
+.TP
+.B -z
+.RB "Tell " "sar"
+to omit output for any devices for which there was no activity during the
+sample period.
 
 .SH ENVIRONMENT
 The
 .B sar
 command takes into account the following environment variables:
-
-.IP S_TIME_FORMAT
-If this variable exists and its value is
-.BR ISO
-then the current locale will be ignored when printing the date in the report header.
-The
-.B sar
-command will use the ISO 8601 format (YYYY-MM-DD) instead.
-
-.IP S_TIME_DEF_TIME
+.TP
+.B S_COLORS
+By default statistics are displayed in color when the output is connected to a terminal.
+Use this variable to change the settings. Possible values for this variable are
+.IR "never" ", " "always " "or " "auto"
+(the latter is equivalent to the default settings).
+.br
+Please note that the color (being red, yellow, or some other color) used to display a value
+is not indicative of any kind of issue simply because of the color. It only indicates different
+ranges of values.
+.TP
+.B S_COLORS_SGR
+Specify the colors and other attributes used to display statistics on the terminal. 
+Its value is a colon-separated list of capabilities that defaults to
+.BR "C=33;22:H=31;1:I=32;22:M=35;1:N=34;1:R=31;22:Z=34;22" "."
+Supported capabilities are:
+.RS
+.TP
+.B C=
+SGR (Select Graphic Rendition) substring for comments inserted in the binary daily
+data files.
+.TP
+.B H=
+SGR substring for percentage values greater than or equal to 75%.
+.TP
+.B I=
+SGR substring for item names or values (eg. network interfaces, CPU number...)
+.TP
+.B M=
+SGR substring for percentage values in the range from 50% to 75%.
+.TP
+.B N=
+SGR substring for non-zero statistics values.
+.TP
+.B R=
+SGR substring for restart messages.
+.TP
+.B Z=
+SGR substring for zero values.
+.RE
+.TP
+.B S_TIME_DEF_TIME
 If this variable exists and its value is
-.BR UTC
-then
-.B sar
+.BR "UTC " "then " "sar"
 will save its data in UTC time (data will still be displayed in local time).
 .B sar
 will also use UTC time instead of local time to determine the current daily
 data file located in the
-.IR @SA_DIR@
+.I @SA_DIR@
 directory. This variable may be useful for servers with users located across
 several timezones.
+.TP
+.B S_TIME_FORMAT
+If this variable exists and its value is
+.B ISO
+then the current locale will be ignored when printing the date in the report header.
+.RB "The " "sar"
+command will use the ISO 8601 format (YYYY-MM-DD) instead.
+The timestamp will also be compliant with ISO 8601 format.
+
 .SH EXAMPLES
+.TP
 .B sar -u 2 5
-.RS
 Report CPU utilization for each 2 seconds. 5 lines are displayed.
-.RE
-
+.TP
 .B sar -I 14 -o int14.file 2 10
-.RS
 Report statistics on IRQ 14 for each 2 seconds. 10 lines are displayed.
 Data are stored in a file called
-.IR int14.file .
-.RE
-
+.IR "int14.file" "."
+.TP
 .B sar -r -n DEV -f @SA_DIR@/sa16
-.RS
-Display memory and network statistics saved in daily data file 'sa16'.
-.RE
-
+.RI "Display memory and network statistics saved in daily data file " "sa16" "."
+.TP
 .B sar -A
-.RS
 Display all the statistics saved in current daily data file.
-.SH BUGS
-.I /proc
-filesystem must be mounted for the
-.B sar
-command to work.
 
+.SH BUGS
+.IR "/proc " "filesystem must be mounted for the
+.BR "sar " "command to work."
+.PP
 All the statistics are not necessarily available, depending on the kernel version used.
 .B sar
 assumes that you are using at least a 2.6 kernel.
+.PP
+.RB "Although " "sar"
+speaks of kilobytes (kB), megabytes (MB)..., it actually uses kibibytes (kiB), mebibytes (MiB)...
+A kibibyte is equal to 1024 bytes, and a mebibyte is equal to 1024 kibibytes.
+
 .SH FILES
-.IR @SA_DIR@/sa dd
+.I @SA_DIR@/saDD
+.br
+.I @SA_DIR@/saYYYYMMDD
 .RS
-Indicate the daily data file, where the
-.B dd
-parameter is a number representing the day of the month.
-
+The standard system activity daily data files and their default location.
+.IR "YYYY " "stands for the current year, " "MM " "for the current month and " "DD"
+for the current day.
 .RE
-.IR /proc
-contains various files with system statistics.
+
+.IR "/proc " "and " "/sys " "contain various files with system statistics."
+
 .SH AUTHOR
 Sebastien Godard (sysstat <at> orange.fr)
-.SH SEE ALSO
-.BR sadc (8),
-.BR sa1 (8),
-.BR sa2 (8),
-.BR sadf (1),
-.BR pidstat (1),
-.BR mpstat (1),
-.BR iostat (1),
-.BR vmstat (8)
 
+.SH SEE ALSO
+.BR "sadc" "(8), " "sa1" "(8), " "sa2" "(8), " "sadf" "(1), " "sysstat" "(5), " "pidstat" "(1),"
+.BR "mpstat" "(1), " "iostat" "(1), " "vmstat" "(8)"
+.PP
+.I https://github.com/sysstat/sysstat
+.br
 .I http://pagesperso-orange.fr/sebastien.godard/