Useful links:
The
Linux Foundation
Linux
Kernel Archives
Linux
Kernel Mailing List
The
Linux Documentation Project

|
Features
This page gives you access
to:
- The
list of sysstat's main
features (or "Why should I use sysstat to monitor
the health of my system?")
- The
main features and improvements added to the latest sysstat stable series
(or "Why should I upgrade my sysstat version?")
- A detailled changelog for each
sysstat version
- Last
but not least, the Matrix of
activities lists all the possible activities for
sar and the corresponding options to use with sar and
sadc.
Sysstat's main features:
- Includes four groups of monitoring tools (sar / sadc
/ sadf, iostat / tapestat / 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, per NUMA nodes
and per Linux task / PID), including support for
virtualization architectures.
- Memory, hugepages and swap space utilization
statistics.
- Virtual memory, paging and fault statistics.
- Per-task (per-PID) memory and page fault
statistics.
- 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.
- Fibre Channel traffic statistics.
- Software-based network processing (softnet)
statistics.
- NFS server and client activity.
- Sockets statistics.
- Run queue and system load statistics.
- Kernel internal tables utilization statistics.
- System and per Linux task switching activity.
- Swapping statistics.
- TTY devices 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).
- Tape drives statistics.
- Pressure-Stall Information statistics.
- Can generate graphs (SVG format - Scalable Vector
Graphics) that can be displayed in your favorite web
browser!
- Average statistics values are calculated over the
sampling period.
- Most system statistics can be saved in a file for
future inspection.
- Allows to configure the length of data history to
keep.
- On the fly detection of new devices (disks, network
interfaces, etc.) that are created or registered
dynamically.
- 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-
or 64-bit.
- Needs very little CPU time to run (written in C).
- System statistics collected by sar/sadc can be
exported in various different formats (CSV, XML, JSON,
SVG, etc.). DTD and XML Schema documents are included
in sysstat package. JSON output format is also
available for mpstat and iostat commands.
- sar data can also be exported by sadf to PCP
(Performance Co-Pilot) archive.
- Smart color output for easier statistics reading.
- Internationalization support (sysstat has been
translated into numerous different languages). Sysstat
is now part of the Translation Project.
- Sysstat commands can automatically select the unit
used to display sizes for easier reading (see option
--human ).
- Many programs available on the internet to use
sysstat's data to make graphs (one of them, isag, is
included in sysstat).
- iostat has support for devices managed by drivers in
userspace like spdk.
If you think that other statistics could be
useful for the sys admin and so should be added to
sysstat, please tell me.
Main features and
improvements added to the latest sysstat version:
Sysstat
12.6 stable series - Why should I
upgrade from sysstat 12.4.x to 12.6.x?
- sar and sadf commands have been updated so
that persistent device names can be displayed with
filesystems statistics.
- sar: Code used to collect and display interrupts
statistics has been completely reworked. Interrupts
are now read from /proc/interrupts file instead of
/proc/stat file. A list of interrupts can also be
entered on the command line using option "--int=".
- sar: A new metric (softnet network backlog) has been
added to A_NET_SOFT report.
- Option --rotate has been added to sa1 script to make
it easier to handle file rotation.
- Basic colorization has been added to sadf's output.
- Link Time Optimization (LTO) is now supported when
building sysstat.
- A debug option (which can be selected with "-o
debug") has been added to sadf's SVG output.
- Monitoring a process with pidstat's option -e has
been improved.
- Option --compact has been added to iostat to
indicate that all metrics shall be displayed on a
single line.
Sysstat
12.4 stable series - Why should I
upgrade from sysstat 12.2.x to 12.4.x?
- sadc/sar now collect and display Pressure-Stall
Information (PSI) statistics (metrics added to Linux
kernel 4.20).
- iostat can now display flush I/O statistics
(statistics which have been made available in Linux
kernel 5.5).
- iostat can now display statistics for devices
managed by userspace drivers (e.g. spdk). New flags
(-f/+f) may be used to specify an alternate location
for statistics files.
- mpstat has got a new switch (-T) to display system
topology: core, socket and node numbers. It is also
possible now to select individual CPU and nodes to be
displayed even when option -A (to display all possible
statistics) has been selected.
- cifsiostat command has gained support for SMB2
version of statistics file.
- pidstat and cifsiostat have been largely rewritten
for better performance.
- A new option ("hz=") has been added to sadf to
specify kernel's HZ value when an old binary saDD
datafile has to be converted to the up-to-date format.
- All sysstat commands now display their statistics in
color by default when the output is connected to a
terminal.
- sar also pretty-prints the name of the devices
(those displayed with option -d) by default. A new
option (--pretty) has been added to cifsiostat, sar
and iostat.
- sa1 script has been updated to insert a comment in
the current daily saDD datafile on system suspend or
resume.
- It is now possible to tell sa2 script to wait for a
random delay before running. This can be useful to
prevent a massive I/O burst on some systems.
- sysstat code has been made compliant with latest gcc
version (v10).
- Manual pages are now compressed by default when they
are installed.
Sysstat
12.2 stable series - Why should I
upgrade from sysstat 12.0.x to 12.2.x?
- sar: A stable identifier has been added for disk
statistics. This stable identifier, which won't change
across reboots, is the device's World Wide Name (WWN).
New metrics have also been added to sar Huge Pages
statistics (HugePages_Rsvd and HugePages_Surp).
- sadc: It is now possible to unselect activities by
name (e.g. "sadc -S XALL,-A_PAGE" will collect all
possible activities except paging statistics). Also a
new flag ("-f") has been added to force fdatasync()
use. Last, the timezone value is now saved in the
binary data files.
- sadf has been improved to make it more robust to
corrupted datafiles.
- SVG: New options have been added to sadf
("customcol" and "bwcol") to enable the user to select
distinct color palettes to draw the graphs with "sadf
-g". The color palette can also be customized by the
user.
- PCP: sadf can now export sar data in the format
expected by PCP (Performance Co-Pilote).
- iostat and sar have gained support for discard I/O
statistics which can be displayed on recent linux
kernels. iostat has also been largely rewritten for
better performance (device structures are now
dynamically allocated, iostat better handles the case
when devices are removed then inserted again in the
system...)
- A new simulation environment has been added to
sysstat to run non regression tests. This environment
allows for fast, reproducible tests. With the addition
of hundreds of tests, introduction of regressions in
new sysstat versions is now made more unlikely...
Sysstat
12.0 stable series - Why should I
upgrade from sysstat 11.6.x to 12.0.x?
Sysstat 12.0 includes major changes concerning sar’s
binary data file format and how sar works. Among them:
- A
binary data file should take much less space on disk
thanks to new optimizations on how values are stowed
in memory. The space saved is estimated between 25%
and 45% compared to previous format.
- Structures are no longer statically allocated,
meaning that the system can now register as many new
devices (disks, network interfaces, etc.) as needed
and you will find all of them saved in your saXX data
file (provided that you have selected the
corresponding activities to collect). Previous version
could lead to some devices being ignored and going
unnoticed if no free structures were left.
- Sar (and sadf) will now be able to read a binary
data file whatever its endianness is: Both big-endian
and little-endian files can be read by the same sar or
sadf executable.
- More flexibility has been added to sar’s binary data
file format which should now make it possible to add
new metrics or activities without making the format
unreadable by older sar versions (starting with
version 11.7.1).
Other changes include:
- Support for offline/online CPU has been improved
(for sar and mpstat). Also sar and sadf no longer
display offline CPU.
- A new option ("-z") has been added to sar to omit
output for any devices for which there was no activity
during the sample period.
- Another new option ("-h") has been added to sar to
make output easier to read by a human.
- Options have been added to make it possible to
select network interfaces ("--iface="), block devices
("--dev=") and filesystems ("--fs=") for which
statistics shall be displayed by sar or sadf.
- A new option ("showtoc") can now be used with sadf
SVG output. This option displays, at the beginning of
the SVG file, the list of activities for which there
are graphs (table of contents).
- The user can now select each individual activity
that will be collected by sadc.
- It is now possible to select the number of decimal
places (in the range 0-2) used by every sysstat
command.
- National Language Support has been improved, with a
new Korean translation added.
Sysstat
11.6 stable series - Why should I
upgrade from sysstat 11.4.x to 11.6.x?
- sar can now display software-based network
processing statistics (softnet). New metrics have also
been added for other activities, e.g. 'available free
memory" with memory statistics.
- A new option (--human) can be used with various
sysstat commands to make them display values in human
readable format.
- New options can be used with "sadf -g" to enhance
graphs output: Option "showidle" can be used to
display CPU idle state in SVG graphs ; Option "packed"
tells sadf to allow multiple graphs on a row ; Option
"height=..." allows the user to explicitly specify
canvas height ; Option "showinfo" displays extra
information such as the date and the host name.
- A new output format has been added to sadf to
display the raw contents of sar binary data files.
- The iostat and mpstat commands can now display their
output in JSON format.
- A range of CPU or interrupts can now be selected
with sar and mpstat commands.
- The pidstat command has been improved: It now
displays "%wait" metric as part of CPU utilization
statistics. It also has a new switch (-e) which can be
used to pass a program to execute and make pidstat
monitor it. Last you can choose to display the
timestamps in seconds since the Epoch with its new -H
switch.
- The mpstat command can provide CPU statistics based
on NUMA node placement.
- The iostat command has a new switch to display a
short (narrow) version of its reports that should fit
in 80 chars wide screens. New metrics have also been
added to its extended statistics report.
- National Language Support has been improved, with a
new Friulian translation.
Sysstat
11.4 stable series - Why should I
upgrade from sysstat 11.2.x to 11.4.x?
- Sysstat 11.4 includes SVG (Scalable
Vector Graphics) support for sar/sadf. It is now
possible to draw graphs for (almost) every sar
activity using a maintained tool (sadf) which is part
of sysstat package. Extra options ("skipempty",
"autoscale", "oneday") may be passed to sadf to
control SVG output.
Sysstat
11.2 stable series - Why should I
upgrade from sysstat 11.0.x to 11.2.x?
- A new command (tapestat) has been added to display
statistics for tape drives.
- A new option (-c) has been added to sadf to enable
the user to convert an old system activity binary data
file (sysstat 9.1.6 at least) to the up-to-date
format.
- sar has now support for Fibre Channel HBA
statistics. New metrics have also been added to memory
statistics.
- All sysstat commands have now smart color output
support for easier statistics reading. Colors can be
customized by the user.
- The obsolete nfsiostat command has been removed
(such a command already exists in the nfs-utils
package).
- sysstat is now regularly submitted for static
analysis provided by Coverity Scan. As a result,
numerous defects have been fixed and sysstat has now a
defect density (number of defects per 1000 lines of
code) lower than 0.1 as of this writing.
Sysstat
11.0 stable series - Why should I
upgrade from sysstat 10.2.x to 11.0.x?
- sar, sadc and sadf commands can now take into
account a change of CPU count in binary data files
without losing data from current day.
- The standard system activity daily data files used
by sar, sadc and sadf may now be named saYYYYMMDD
instead of saDD, where YYYY stands for the current
year, MM for the current month and DD for the current
day.
- It has been made easier for sar, sadc and sadf to
take into account alternate locations for standard
system activity daily data files (the default location
remains /var/log/sa).
- systemd timer units can now be used instead of cron
jobs to launch sadc.
- pidstat can now display task scheduling priority and
policy information (option -R).
- pidstat can now display only processes whose name
matches a regular expression -option -G). All threads
of matching processes are displayed.
- National Language Support improved: Added Galician
and Hungarian translations.
Sysstat
10.2 stable series - Why should I
upgrade from sysstat 10.0.x to 10.2.x?
- sar and mpstat can now display time spent running a
niced guest.
- 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
percentage).
- 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
days ago.
- 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
displayed.
- 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
system boot.
- 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
is activated.
- National Language Support improved: Added Turkish
translation.
Sysstat
10.0 stable series - Why should I
upgrade from sysstat 9.0.x to 10.0.x?
- WARNING: Support for kernels older than 2.6 has been
removed.
- 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
mpstat.
- 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
(JavaScript Object Notation).
- 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
online processors.
- 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
translations.
Sysstat 9.0
stable series - 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
utilization statistics.
- 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
and pidstat.
- 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
translations.
Sysstat 8.0
stable series - 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
activity...)
- 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
device-mapper devices.
- 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
Portuguese translations.
- 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
of pseudo-terminals).
|