Kernel Mailing List
Linux Documentation Project
This page gives you access
list of sysstat's main
features (or "Why should I use sysstat to monitor
the health of my system?")
main features and improvements added to the latest sysstat stable series
(or "Why should I upgrade my sysstat version?")
- A detailled changelog for each
but not least, the Matrix of
activities lists all the possible activities for
sar and the corresponding options to use with sar and
Sysstat's main features:
- Includes four groups of monitoring tools (sar / sadc
/ sadf, iostat / nfsiostat / cifsiostat, mpstat,
pidstat) for global system performance analysis.
- Can monitor a huge number of different metrics:
- Input / Output and transfer rate statistics
(global, per device, per partition, per network
filesystem and per Linux task / PID).
- CPU statistics (global, per CPU and per Linux task
/ PID), including support for virtualization
- Memory, hugepages and swap space utilization
- Virtual memory, paging and fault statistics.
- Per-task (per-PID) memory and page fault
- Global CPU and page fault statistics
for tasks and all their children.
- Process creation activity.
- Interrupt statistics (global, per CPU and per
interrupt, including potential APIC interrupt
sources, hardware and software interrupts).
- Extensive network statistics: network interface
activity (number of packets and kB received and
transmitted per second, etc.) including failures
from network devices; network traffic statistics for
IP, TCP, ICMP and UDP protocols based on SNMPv2
standards; support for IPv6-related protocols.
- NFS server and client activity.
- Socket statistics.
- Run queue and system load statistics.
- Kernel internal tables utilization statistics.
- System and per Linux task switching activity.
- Swapping statistics.
- TTY device activity.
- Power management statistics (instantaneous and
average CPU clock frequency, fans speed, devices
temperature, voltage inputs, USB devices plugged
into the system).
- Filesystems utilization (inodes and blocks).
- Average statistics values are calculated over the
- Most system statistics can be saved in a file for
- Allows to configure the length of data history to
- On the fly detection of new devices (disks, network
interfaces, etc.) that are created or registered
- Support for UP and SMP machines, including machines
with hyperthreaded or multi-core processors.
- Support for hotplug CPUs (it detects automagically
processors that are disabled or enabled on the fly)
and tickless CPUs.
- Works on many different architectures, whether 32-
- Needs very little CPU time to run (written in C).
- System statistics can be exported in various
different formats (CSV, XML, JSON, etc.). DTD and XML
Schema documents are included in sysstat package.
- Internationalization support (sysstat has been
translated into numerous different languages). Sysstat
is now part of the Translation Project.
- Many programs available on the internet to use
sysstat's data to make graphs (one of them, isag, is
included in sysstat).
If you think that other statistics could be
useful for the sys admin and so should be added to
sysstat, please tell me.
improvements added to the latest sysstat version:
10.2 stable series
- Why should I
upgrade from sysstat 10.0.x to 10.2.x?
10.0 stable series
- sar and mpstat can now display time spent running a
- Filesystems statistics have been added to sar.
- Other new metrics have been added to sar: kbdirty
(amount of memory waiting to get written back to
disk),%ifutil (network interface utilization
- Persistent device names support has been added to
sar and iostat (option -j).
- Commands like sar, mpstat and pidstat now stop and
display their average statistics when they receive a
SIGINT signal (ctrl/c).
- A new shortcut can now be used with sar to display
data from previous days. For instance, "sar -3"
displays data that were saved in default datafile 3
- systemd support has been added (used to start sadc
at boot time).
- A new option has been added to sadf to display the
timestamps in the local time of the data file creator
instead of UTC.
- pidstat now displays task's UID for all tasks. With
option -U, pidstat displays the username of the task
instead of its UID, and when this option is followed
by a user name, only tasks belonging to that user are
- Option -v has been added to pidstat: This option
enables the user to display the number of threads and
file descriptors associated with tasks. Also a new
metric has been added to pidstat I/O statistics:
Per-task block I/O delays.
- Option -y can now be used with iostat to prevent it
from displaying its first report with statistics since
- Option --enable-copy-only has been added to
configure script to make sure that files are only
copied when sysstat is installed and that no service
- National Language Support improved: Added Turkish
- Why should I
upgrade from sysstat 9.0.x to 10.0.x?
- WARNING: Support for kernels older than 2.6 has been
- Two new commands have been added into sysstat's
package: nfsiostat and cifsiostat. These display
statistics about NFS and CIFS filesystems.
- sar's activity file format has changed with the
addition of a new magical number for each activity. A
format change can now hit only one activity instead of
the whole file.
- sar has been optimized and now tells sadc to read
only the required activities.
- Support for tickless CPUs has been added to sar and
- Support for fan speed, device temperature and
voltage inputs statistics has been added to sar and
sadc. This requires the lm_sensors library.
- sar can now takes a snapshot of all the USB devices
currently plugged into the system.
- Statistics about CPU average clock frequency and
hugepages utilization have been added to sar and sadc.
- New metrics have been added to sar: Number of tasks
waiting for I/O, amount of active and inactive memory.
- sadf can now display sar data in JSON format
- mpstat can now display per processor software
interrupts statistics with kernels 2.6.31 and later.
- A new switch ("-P ON") has been added to mpstat. It
indicates that statistics should be displayed only for
- New fields (r_await, w_await) have been added to
iostat's extended statistics.
- iostat can display consolidated statistics for
groups of devices.
- iostat now takes into account POSIXLY_CORRECT
environment variable. Its output is now expressed in
kB/s by default unless this variable is set (in which
case it is expressed in block/s).
- pidstat command has been improved: A new option
enables it to display process stack statistics.
Support for regular expressions has also been added to
pidstat's option -C.
- Option --disable-stripping has been added to
configure script to prevent it from stripping object
files. Option --enable-collect-all has also been added
to configure script to tell sadc to collect all
possible activities, including optional ones.
- Debug option has been added to various sysstat's
commands (iostat, nfsiostat, cifsiostat).
- National Language Support improved: Added Basque,
Croatian, Czech, Esperanto, Ukrainian and Serbian
- Why should I upgrade from sysstat
8.0.x to 9.0.x?
- Complete new design for sar, sadc and sadf commands.
They have been rewritten in a non-monolithic way with
a generic design architecture. It is now possible to
add new metrics to sar without changing system
activity data files format.
- System activity data files have extra header
data that enable the user to identify which version of
sysstat created them.
- Sysstat can now pretty print device names whose
minor numbers are greater than 255. This should be
useful on large Linux clusters.
- Improved CPU statistics for sar: Detailed CPU
utilization can be displayed with "sar -u ALL".
- NFS v4 support added to sar.
- Support for SNMP, IP v6 and power management
statistics added to sar.
- New metrics added to swap space and memory
- Option -c has been removed from sar: Task creation
and context switch activities have been merged and are
now available with option -w.
- sar no longer displays interrupts per processor
statistics. mpstat should be used for that.
- sadc can now collect partition statistics in
addition to disk ones.
- mpstat can now display stats for all interrupts,
including NMI, etc.
- Using option -H with sadf now displays detailed
information about a system activity data file
(activities that have been collected, etc.)
- Added virtual machine time accounting to sar, mpstat
- sysstat commands display machine architecture and
number of CPU in their report header.
- sadf can now display all selected activities
horizontally on a single line of data. This makes
loading data into a database easier.
- sadf -x now takes into account options -s and -e
(which specify a starting and ending time) and also
interval and count parameters.
- iostat now displays read and write operations
per second in its NFS report.
- Extended statistics for devices and
partitions are now available with iostat.
- Several options have been added to pidstat and
iostat so that the user can better control the output.
- National Language Support improved: Added
Indonesian, Chinese (traditional) and Maltese
- Why should I upgrade from sysstat
7.0.x to 8.0.x?
- Autoconf support added.
- Addition of a new command ("pidstat") aimed at
displaying statistics for processes, threads and their
children (CPU, memory, I/O, task switching
- Better hotplug CPU support.
- New VM paging metrics added to sar -B.
- Added field tcp-tw (number of sockets in TIME_WAIT
state) to sar -n SOCK.
- iostat can now display the registered device name of
- Timestamped comments can now be inserted into data
files created by sadc.
- XML Schema document added. Useful with sadf -x.
- National Language Support improved: Added Danish,
Dutch, Kirghiz, Vietnamese and Brazilian
- Options -x and -X removed from sar. You should now
use pidstat instead.
- Some obsolete fields (super*, dquot* and rtsig*)
were removed from sar -v. Added field pty-nr (number