Changes: 2006/10/22: Version 7.0.2 - Sebastien Godard (sysstat <at> wanadoo.fr) * Hotplug CPU support added to sar and mpstat * Use /sys to count the number of available processors. /proc/stat is used for that only if /sys is not found. * sysstat DTD updated. * sysstat spec file updated (gettext is now required). * NLS updated: Swedish translation added. * Manual pages updated. * Makefile updated. * CREDITS file updated. 2006/09/17: Version 7.0.1 - Sebastien Godard (sysstat <at> wanadoo.fr) * Use now sysconf() function to get the size of a memory page instead of using header file <asm/page.h>. * The time specified with sadf options -s and -e is now always considered as given in local time. sadf output is now really consistent with that of sar. * Fixed a bug in the SREALLOC() macro which was causing sar to exit unexpectedly with this message: "realloc: Success". * Try to better guess when a stats title line has to be displayed by sar. * Makefile updated (SMP_RACE definition was no longer taken into account when compiling sadc). * sysstat spec file updated. * sar and sadf manual pages updated. * FAQ updated. * CREDITS file updated. 2006/07/09: Version 7.0.0 - Sebastien Godard (sysstat <at> wanadoo.fr) * S_TIME_DEF_TIME environment variable added for sar, sadc and sadf. * Use now sysconf() function to get the number of clock ticks per second (HZ value) instead of using kernel include file <sys/param.h>. * Columns "Device", "rrqm/s" and "wrqm/s" enlarged for iostat -x. * sysstat installation process updated to use chkconfig if available. * Manual pages updated. * Makefile updated. * sysstat web site address updated. * Code cleaned. * CREDITS file updated. 2006/05/24: Version 6.1.3 - Sebastien Godard (sysstat <at> wanadoo.fr) WARNING: Daily data files format has changed, and is *not* compatible with the previous one! [0x2169] * Option -P can now be used with sar even on SMP machines where only one processor is available. * Small bug fixed for mpstat, where explicitly specifying processor 0 ("-P 0") could lead to incorrect output on UP machines. * Option -D added to sadf: this option displays the contents of a data file in a database-friendly format with a timestamp expressed in seconds from the epoch. * sadf manual page updated. * NLS updated. * CREDITS file updated. 2006/04/23: Version 6.1.2 - Sebastien Godard (sysstat <at> wanadoo.fr) * Fix incorrect NFS client and server statistics for sar. * sar can now display stats for newly created processes when option -x ALL or -X ALL is used. * iostat -x was displaying redundant information. It now displays amount of data read from or written to devices in sectors, kilobytes or megabytes depending on the switch used. * isag updated to keep up with current sar version. * sar and mpstat manual pages updated. * FAQ updated. 2006/02/22: Version 6.1.1 - Sebastien Godard (sysstat <at> wanadoo.fr) WARNING: Daily data files format has changed, and is *not* compatible with the previous one! [0x2168] * New field added to sar: %steal. * The size of a long integer in now saved in the header of the data file created by sar. This size can be displayed with sadf -H. * Replaced the keyword "FULL" by the keyword "ALL" for sar -n to be consistent with remaining options. * Makefile updated (use implicit rules). * sar manual page updated. * CREDITS and FAQ files updated. 2005/11/28: Version 6.0.2 - Sebastien Godard (sysstat <at> wanadoo.fr) * New field added to mpstat and iostat: %steal. * sar updated to take into account cpu steal time. * Off-by-one error in ioc_conv which was corrupting device names on 64-bit architecture [Debian bug #334305]. * Binary RPM package now installs a sample crontab in /etc/cron.d. * Makefile updated (remove sysstat.cron.* during make clean - new target added: sysstat.crond.sample). * sar now checks exit code from dup2() system calls. * Option -V now only displays sysstat version number. * NLS updated. * FAQ updated. * Manual pages updated. 2005/06/25: Version 6.0.1 - Sebastien Godard (sysstat <at> wanadoo.fr) * Fixed a memory leak in ioconf parsing functions used by sar and iostat. * sar now displays its statistics to STDOUT in addition to saving them into the file when option -o has been entered on the command line. * sar now recalculates number of system items (network interfaces, disks, serial lines, etc.) when a file rotation happens. * Make sar -b work again when used without option -d. * Small changes so that sysstat can be compiled with gcc-4.0.1. * sysstat updated so that it may be installed on Slackware. * sar manual page updated. * CREDITS file updated. * Code cleaned. 2005/05/14: Version 6.0.0 - Sebastien Godard (sysstat <at> wanadoo.fr) WARNING: Daily data files format has changed, and is *not* compatible with the previous one! [0x2167] * Additional fields added to sar -y (TTY statistics). sar, sadf and DTD updated. * sar -d now only reports for used devices (devices with non zero statistics). * Stricter sadf syntax checking: various output formats are now mutually exclusive. * Stricter iostat syntax checking: -k and -m options are now mutually exclusive. * iostat: option -m is now taken into account even when displaying extended statistics. * Fixed a bug that prevented iostat from displaying stats about devices that were unknown in sysstat.ioconf file. * iostat might display bogus sectors values when the corresponding kernel counters had overflown. This is now fixed. * "sadf datafile -- -A" should also display individual interrupts if available in datafile. * Fixed a bug that prevented sar -x from displaying stats about a process if it was after the first 256 processes in the process list. * Manual pages updated. * sa1 script always uses option -d in crontab. * sysstat.ioconf device configuration file updated. * NLS updated. * FAQ and CREDITS files updated. * Code cleaned. 2005/02/25: Version 5.1.5 - Sebastien Godard (sysstat <at> wanadoo.fr) * -x option added to sadf: it is now able to display the contents of a sar datafile in XML. The corresponding DTD (Document Type Definition) is included in the sysstat package. * Small code change so that sysstat may be compiled with gcc-4.0. * A few typos fixed in formulas used by sadf to display stats on machines where HZ<>100 (typos appeared in sysstat 5.1.4). * Fixed a bug in the stats displayed by sar -d. * Removed a false workaround in iostat: better show that the kernel is buggy rather than display a value that seems correct but which is actually not... * Fixed sar -i option which might not select records at the specified interval on machines with multiple processors. * NLS updated and cleaned. Do no longer translate fields names (sar, iostat, etc.). Changed nb_NO.po and nn_NO.po files to nb.po and nn.po. * Bug fixed in spec file: when installing sysstat i586 RPM package, sa1 and sa2 scripts were pointing to the wrong sadc location. * Now sar and sadc display the magic number when they meet an invalid system activity file. * sadf manual page updated. * sysstat RPM spec file is now included in source package. * Code cleaned. * FAQ, Makefile and CREDITS files updated. 2005/01/02: Version 5.1.4 - Sebastien Godard (sysstat <at> wanadoo.fr) WARNING: Daily data files format has changed, and is *not* compatible with the previous one! [0x2166] * NFS client and server statistics added to sar. * sar -d now only reads stats for devices (and not partitions) from /proc/partitions. (This is what it was already doing with /proc/diskstats). * Display routines from sadf merged, so that -ppc and -db always output the same values. * sadf updated to handle NFS statistics. * sadf can now display the header of a data file (option -H). * Define MAX_BLKDEV in ioconf.h if non-existent in <linux/major.h>. * sar now looks for sadc in one directory only, specified at compile time. Moreover it is now possible to have two different sysstat versions installed: sar knows where its sadc counterpart is located. * sapath.in removed. SADC_PATH is defined in CONFIG file. * sar and sadf manual pages updated. * sysstat.ioconf file updated. * Fixed a bug in i386 RPM package, where sadc location was not consistent with that of sar. Spec file updated. * Makefile updated. * NLS updated. * Various cosmetic changes (code and manual pages). Code cleaned. * FAQ and CREDITS files updated. 2004/11/22: Version 5.1.3 - Sebastien Godard (sysstat <at> wanadoo.fr) WARNING: Daily data files format has changed, and is *not* compatible with the previous one! [0x2165] * Option -p added to sar: It enables sar (and also sadf) to display device names as they appear in /dev. * sysstat.ioconf support added. * New fields added to sar -d (more disk activities displayed): avgrq-sz, avgqu-sz, await, svctm, %util. * sadf updated to handle new disk activities. * I/O and transfer rate statistics as displayed by sar -b are available whatever the version of the kernel is (i.e. even on recent kernels). * Disk stats are read by sadc from /proc/stat only if they cannot be read from /proc/{partitions,diskstats}. * sadc: Some variables declarations moved around. * sar manual page updated. * Added workaround for EMC PowerPath driver bug to enable iostat to display proper device name. * Makefile updated: Use $@ and $< everywhere; 'make {iostat,mpstat}' work again; Create object files before linking; Removed unused IOS_DFLAGS variable; Use DESTDIR variable everywhere; Create libsysioc.a; Install sysstat.ioconf. * NLS updated. * README and CREDITS files updated. 2004/11/05: Version 5.1.2 - Sebastien Godard (sysstat <at> wanadoo.fr) * sar -d now also uses /proc/partitions to get its data. From now on sar -d looks in the following files in that order: /proc/diskstats, /proc/partitions, /proc/stat. * sadc writes disks data to file only if -d option is explicitly set on the command line. * sadc now reads individual interrupts data from /proc/stat only if -I option was entered on the command line. * 'sar -A' is now equivalent to 'sar -bBcdqrRuvwWy -I SUM -I XALL -n FULL -P ALL' (i.e. individual interrupts are also included in activities). * Option -m now tells iostat to display statistics in megabytes per second instead of blocks per second. * Make history (number of days to keep log files) configurable in /etc/sysconfig/sysstat file, which is used by sa2 script. * Now use Vixie cron to launch sadc when possible. * sadc, sa1 and sa2 may now be installed in another directory than ${PREFIX}/lib/sa. This is useful on 64-bit systems where the proper directory should be ${PREFIX}/lib64/sa. * When uninstalling sysstat, always delete sysstat script, config file and links in /etc tree. Also always delete Vixie cron entry. * sysstat script now returns real exit code. * sar/sadc: Stricter syntax checking for -x and -X options use. * sysstat "*.sh" files renamed in "*.in". * Makefile updated. * sadc and sar manual pages updated. * NLS updated. * FAQ updated. * CREDITS and README files updated. 2004/10/09: Version 5.1.1 - Sebastien Godard (sysstat <at> wanadoo.fr) WARNING: Daily data files format has changed, and is *not* compatible with the previous one! [0x2164] * sar now reads CPU data, number of context switches, number of sectors and total number of interrupts as 64-bit unsigned values. It also reads the number of running processes as unsigned long instead of unsigned int. * sadf - System activity data formatter command added. * Options -h and -H removed from sar. "sar -h" is replaced by "sadf -p", and "sar -H" is replaced by "sadf -d". Read sadf manual page, as its syntax is a bit different from that of sar. * Common code for sar and sadf moved to sa_common.c file. * pid_stats members don't need to be aligned since these stats are not written to daily data files. Packing them saves some memory on 32-bit architectures. * No longer indicate that -x and -X are possible options for sadc. They are only useful when used as options for sar, not sadc. * Minor buffer overrun fixed in iostat. * Updated CPU header for iostat and mpstat: CPU used while executing at the system level is displayed as '%system' by iostat (like sar) and as '%sys' by mpstat. * sadf manual page added. Other manual pages updated. * Updated the GPL notices (the address of the FSF was wrong). * Makefile updated. * NLS updated. * README, FAQ and CREDITS files updated. 2004/08/09: Version 5.0.6 - Sebastien Godard (sysstat <at> wanadoo.fr) * The value for file-sz reported by sar -v was a number of free handles, and not a number of used ones! This is now fixed (and this is really now a number of _used_ file handles). * Now ask during config stage for the directory where sadc will be located. This may be useful for some systems where sadc needs to be installed in a specific location (e.g. on 64 bit s390 systems, the proper directory should be /usr/lib64/sa). * sa1 script updated: Use '-' to specify current daily data file instead of guessing its name using current date. * NLS updated: be consistent with GNU gettext standards. * iostat manual page updated. * FAQ updated. * Makefile updated. * CREDITS file updated. 2004/06/08: Version 5.0.5 - Sebastien Godard (sysstat <at> wanadoo.fr) * Timestamp is no longer limited to 11 characters. This should avoid problems with somes locales (for example Japanese locale, where 'mojibake' used to be displayed by sar and mpstat sometimes). * Fixed a bug in sysstat RPM spec file (symlinks to sysstat script were wrong in /etc/rc.d directories). * sar now checks parameters for options -n, -s and -e more aggressively. * NLS updated: Japanese translation added. * Various typos fixed in several files (manual pages, README, etc.) * CREDITS file updated. 2004/05/20: Version 5.0.4 - Sebastien Godard (sysstat <at> wanadoo.fr) * When trying to lock file, sadc now checks for both EWOULDBLOCK and EAGAIN error codes to be portable. * sar could sometimes display a line whose time stamp was greater than the limit set by -e option. This is no longer possible. * The sadc command in sysstat.sh script had to be enclosed in quotes to work when called via 'su -c'. * The sysstat.sh script was sending the output of sadc command to stdout instead of the standard system activity file. This is now fixed. * Outfile must now be explicitly set to "-" for sadc to use the standard system activity file. * FAQ updated. * iostat manual page updated. Typo fixed in sadc manual page. * Fixed the "Save picture" option of isag script. 2004/04/07: Version 5.0.3 - Sebastien Godard (sysstat <at> wanadoo.fr) * iostat now reads the number of sectors in /proc/diskstats or from sysfs as 64-bit unsigned values. * iostat and mpstat now read CPU data and the number of interrupts in /proc/stat as 64-bit unsigned values. * sar uses "%u" instead of "%d" to read unsigned integer values _everywhere_. * sar and sadc are now a little bit more verbose when dealing with invalid activity files. * Network interface name size is now read from include file <net/if.h>. * FAQ polished up. * Slovak translation added. NLS updated. * Typo fixed in iostat manual page. * Makefile and CREDITS file updated. * isag upgraded to version 1.26 (isag package release 0.81.0). 2004/03/10: Version 5.0.2 - Sebastien Godard (sysstat <at> wanadoo.fr) * iostat will _again_ look for statistics in /proc/partitions if available. Too many production servers are still using 2.2.x or 2.4.x kernels and iostat must be able to display extended stats also for them (/proc/partitions support was removed in sysstat version 4.1.3). So now, iostat gets its statistics from the following sources in that order: /proc/diskstats, sysfs, /proc/partitions and then /proc/stat. * statistics are now read by iostat and mpstat as unsigned long instead of int to avoid integer overflow. * iostat should now handle properly the case when the 'weighted number of milliseconds spent doing I/Os' (read in sysfs or /proc/{partitions,diskstats}) decreases with time. * iostat manual page updated. * Minor temporary file vulnerability fixed in isag command. * README, FAQ and CREDITS files updated. * Author's email changed. 2004/02/02: Version 5.0.1 - Sebastien Godard <sebastien.godard@wanadoo.fr> * -L option added to sadc. Enable sadc to lock its output file to prevent multiple instances from writing to it at once. * sa1 and sysstat scripts updated to take advantage of -L option. * Handle the case where, under very special circumstances, STDOUT may become unavailable, and sar, iostat and mpstat are no longer able to display anything. * sadc as called in sysstat script also uses -F option to force the creation of daily data file. * sar, sadc and mpstat manual pages updated. * Code cleaned. * FAQ and CREDITS files updated. 2003/11/09: Version 5.0.0 - Sebastien Godard <sebastien.godard@wanadoo.fr> * New fields added to mpstat: %irq (%time spent servicing interrupts) and %soft (%time spent servicing softirqs). * sar and iostat updated to take into account time spent servicing interrupts and softirqs when displaying percentage of time in system mode. * By default iostat now displays only statistics information for devices that are used by the system. You should now use the ALL keyword to tell iostat to display statistics for every device including those that have never been used. * The file version.h is now dynamically created. sysstat's version number is now only recorded in the Makefile. * sar manual page updated: beginning with kernels 2.4 and later, pgpgin and pgpgout statistics are in kilobytes and not in blocks (see linux-2.4/fs/proc/proc_misc.c and linux-2.6/mm/page_alloc.c). * iostat and mpstat manual pages updated. * Makefile updated: don't process NLS files if they are up-to-date. * sysstat's RPM spec file updated to enable clean, non-root builds. * NLS updated. * FAQ and CREDITS files updated. 2003/09/28: Version 4.1.7 - Sebastien Godard <sebastien.godard@wanadoo.fr> WARNING: Daily data files format has changed, and is *not* compatible with the previous one! [0x2163] * /proc/diskstats is now the preferred source for iostat to get its statistics. If non-existent, iostat falls back on sysfs then on /proc/stat. * In addition to devices, partitions can also be entered on the command line for iostat providing that option -x is not used. * /dev prefix has been removed from device name displayed by iostat -x. * sar -d now looks for disks statistics in /proc/diskstats with post 2.5 kernels. * sar uses /proc/vmstat file with post 2.5 kernels to find paging and swapping statistics. * activepg, inadtypg, inaclnpg and inatarpg stats removed from sar -B report (they were not really useful). * sar -B now displays the number of page faults made by the system (pgfault/s and pgmajflt/s). * Stat on shared memory removed from sar -r and sar -R (this stat was no longer maintained by the kernel since 2.4 because of performance problems). * Cached swap statistic information added to sar -r. * sar -d now displays separate statistics for sectors that are read from or written to devices. * %file-sz (percentage of used file handles) is no longer displayed by sar -v, since the upper limit for the number of open files will self-scale with 2.6 kernels. * sar now looks more aggressively for network devices in /proc/net/dev. * Heading spaces in network interface names removed (sar -n). * Fixed a problem reading /proc/interrupts when there are a lot of CPUs (mpstat, sadc). * NR_IRQS value increased to 256, since IA64 supports 256 irqs per CPU. * Some stats counters are now read as unsigned long instead of unsigned int (pgpgin, pgpgout, pswpin, pswpout, irq_sum). * sar and iostat manual pages updated. * FAQ, README and CREDITS files updated. * NLS updated. 2003/08/20: Version 4.1.6 - Sebastien Godard <sebastien.godard@wanadoo.fr> WARNING: Daily data files format has changed, and is *not* compatible with the previous one! [0x2162] * Machine uptime calculation is now optimized on SMP machines to minimize the consequences if an overflow condition happens. Especially useful when asking for stats since system boot. * -F option added to sadc. Useful to force the creation of the daily data file: an already existing file with a wrong format will be truncated by sadc if this option is used. * sa1 script now calls sadc with -F option. * The processor number to which the process is attached was no longer displayed by sar -x. Make it appear again. * CPU usage for processes, as displayed by sar -x and sar -X, should now be correct on machines where HZ <> 100 (e.g. IA64 architecture). * iostat still assumed that jiffies were 100ths of a second in some places. Now use Linux HZ definition *everywhere*. * The average I/O requests queue length as displayed by iostat -x was wrongly calculated. This is now fixed. * Manual pages updated. * NLS updated. * Cosmetic changes in various parts of the code. * FAQ, README and CREDITS files updated. 2003/07/21: Version 4.1.5 - Sebastien Godard <sebastien.godard@wanadoo.fr> WARNING: Daily data files format has changed, and is *not* compatible with the previous one! Delete existing data files in /var/log/sa directory! [0x2161] * 'sar -x <pid>' and 'sar -X <pid>' work again. * sar had a longstanding bug that prevented option -P from working properly if the machine had more than 32 processors. This is now fixed. * Fixed a bug introduced in 4.1.2, which made some LINUX RESTART messages to not be displayed by sar. * sar now uses bitmap of char instead of int to avoid endianness problems. * sar can now handle a huge number of processors, serial lines and network interfaces. * FAQ updated. 2003/07/01: Version 4.1.4 - Sebastien Godard <sebastien.godard@wanadoo.fr> WARNING: Daily data files format has changed, and is *not* compatible with the previous one! Delete existing data files in /var/log/sa directory! [0x2160] * Fixed the way overflow conditions were handled by sar for interfaces counters. * On really big machines with 100 GB of memory or more, the values read by sadc in /proc/meminfo would get truncated and cause havoc in the calculations. This is now fixed. * iostat and sar can now read many more disk entries in /proc/stat if necessary. * Option "-x SUM" removed for sar. It was used to tell sar to display the total number of minor and major faults made by the system. Unfortunately, the calculation was tricky, and the results were uncertain... * NLS updated. Polish translation added. Also proper charset and encoding declarations added to fix msgfmt warnings and allow gettext to recode between various charsets (e.g. German translation will be shown properly both with LANG=de_DE.ISO-8859-1, and LANG=de_DE.UTF-8) * Code 'sanitization'. * Manual pages updated. * README and FAQ files updated. 2003/05/08: Version 4.1.3 - Sebastien Godard <sebastien.godard@wanadoo.fr> * iostat should now be fully 2.5/2.6 kernel compliant. * Disks arrays in iostat are now dynamically sized. * iostat: sysfs is now used in preference to /proc/stat if available. * iostat will no longer look for statistics in /proc/partitions. sysfs filesystem must now be available for iostat to get its extended stats (post 2.5 kernels). * iostat: Devices for which statistics are requested can now be entered on the command line even if option -x is not used. * Usage messages updated. * Manual pages updated. * Code cleaned (dk_drive_sum removed in iostat, long lines folded, functions split in smaller parts, etc.) * NLS updated. Romanian translation added. * isag upgraded to version 1.22. 2003/01/24: Version 4.1.2 - Sebastien Godard <sebastien.godard@wanadoo.fr> WARNING: Daily data files format has changed, and is *not* compatible with the previous one! Delete existing data files in /var/log/sa directory! [0x215f] * sar -q now also displays load average for the past 15 minutes. * -P option added to sar. This option enables sar to display stats on a per processor basis. Options -U and '-I PROC' are deprecated. 'sar -U ALL' is replaced by 'sar -u -P ALL', and 'sar -I PROC' by 'sar -I SUM -P ALL'. * Fixed iowait value displayed by sar on SMP machines with pre 2.5 kernels. * When displaying CPU utilization on SMP machines, sar now recalculates the interval based on current CPU's tick count. * Always check that the number of CPUs has not increased when reading /proc/stat (sadc, mpstat). * sadc: Don't assume that the first line in /proc/net/sockstat concerns sockets. Check it! * Serial lines are ignored by sadc for every kind of kernels (UP, SMP...) if SMP_RACE is defined. SMP_RACE is no longer defined by default in RPM packages. * Code cleaned: Dead code removed in iostat.c, some lines longer than 80 chars folded, etc. * sar manual page updated. * FAQ updated. * NLS updated. 2003/01/02: Version 4.1.1 - Sebastien Godard <sebastien.godard@wanadoo.fr> WARNING: Daily data files format has changed, and is *not* compatible with the previous one! Delete existing data files in /var/log/sa directory! [0x215e] * sar -u/-U, iostat and mpstat can now display time spent in I/O wait mode (with 2.5 kernels and above). * Values like -1 and -2 are no longer aliases for keywords ALL and XALL (sar -U, sar -I, mpstat -P). * Buglet fixed in iostat.h. * LC_CTYPE needs to be set, or it will emit messages with ?????? only on some locales, especially ja_JP.eucJP * sar, mpstat and iostat manual pages updated. * NLS updated. * CREDITS file updated. * Typo removed in FAQ file. 2002/11/13: Version 4.0.7 - Sebastien Godard <sebastien.godard@wanadoo.fr> * Make data for timestamp 00:00:00 appear in one of the daily data files when sar/sadc rotates its output file. * Take out check for non SMP configuration when asking for mpstat -P. * sargon script updated. * FAQ updated. 2002/08/04: Version 4.0.6 - Sebastien Godard <sebastien.godard@wanadoo.fr> * mpstat now uses a bitmap of char instead of int to avoid endianness problems. As a consequence, mpstat should now work on PowerMac architectures. * CPU activity as displayed by mpstat -P for a given processor was in a wrong range on SMP machines (e.g. 0-50% for a dual processor box). * Missing bitmap initialization fixed in mpstat.c. * Configuration script updated. * FAQ updated. 2002/05/12: Version 4.0.5 - Sebastien Godard <sebastien.godard@wanadoo.fr> * Average wait times and service times as displayed by iostat -x were wrong by a factor of 10. This is now fixed. * Linux RESTART messages must now be in the interval specified by -s/-e options to be displayed by sar. * Fixed a small bug that affected the timestamp for RESTART messages displayed by sar -h when option -t was used. * sar -H now displays its data in local time instead of UTC when option -t is used. * sargon shell script added. * Created a contrib directory, including sargon and isag commands. * NLS updated. * FAQ updated. * Makefile updated. * sar manual page updated. 2002/04/07: Version 4.0.4 - Sebastien Godard <sebastien.godard@wanadoo.fr> * iostat is now able to display I/O activity in kB/s with 2.4.x kernels (option -k). * Fixed a typo in 'sar -W -h' output. * Try to handle the case when some parameters in /proc/net/dev may overflow ULONG_MAX. * 'sar -d' now displays sectors per second instead of blocks per second. * iostat and sar manual pages updated. * Added a FAQ. * NLS updated: Russian translation added. 2002/01/27: Version 4.0.3 - Sebastien Godard <sebastien.godard@wanadoo.fr> * iostat now displays statistics in kB/s when option -x is used. * Configuration script updated. * sar and iostat manual pages updated. * umask also set in sa1 shell script. * Various sanity checks added. * Fixed potential segmentation faults that could happen with some locales. * KB (standing for kilobytes) replaced with kB in various places. * NLS updated: Italian translation added. 2001/09/22: Version 4.0.2 - Sebastien Godard <sebastien.godard@wanadoo.fr> * CPU usage, as displayed by iostat, mpstat and sar, should now be OK on machines where HZ <> 100 (e.g. IA64 architecture). * MAX_PART constant set to 256 in iostat.h. * "-H" database friendly option added to sar. * Better disks and network interfaces management (both may be registered dynamically). * Made options "-s" and "-e" work when option "-h" is used. * isag upgraded to version 1.17. * isag installation is now optional and can be chosen at config stage. * Now try to install man pages in ${PREFIX}/share/man instead of ${PREFIX}/man. * sa2 shell script updated. * Configuration script updated. * sar manual page updated. * NLS updated: Norwegian translation added. 2001/06/24: Version 4.0.1 - Sebastien Godard <sebastien.godard@wanadoo.fr> * Files created by sa2 shell script were world writable. This is now fixed. * sa2.sh shell script updated: only remove sa?? and sar?? files. * Don't use PAGE_SHIFT since it no longer necessarily exists in <asm/page.h>. Compute it using page size instead. * Cosmetic changes for iostat. * NLS updated: Afrikaans translation added. 2001/04/08: Version 4.0.0 - Sebastien Godard <sebastien.godard@wanadoo.fr> * Better network interfaces handling. Now take into account the fact that they may be registered/unregistered dynamically. * Changed formula used to display statistics in order to avoid overflow conditions. * Fixed a bug in iostat, where the %util value scaled incorrectly. * Better long file names management by iostat. * mpstat and sar no longer periodically display the title line when stdout has been redirected to a pipe or a file. * sa2.sh shell script updated: Now exec sadc. * Configuration script updated. * NLS updated. * Makefile updated. * Manual pages updated. * isag command updated. 2001/03/04: Version 3.3.6 - Sebastien Godard <sebastien.godard@wanadoo.fr> WARNING: Daily data files format has changed, and is *not* compatible with the previous one! Delete existing data files in /var/log/sa directory! [0x215d] * New paging statistics added (sar -B). Kernel 2.4 only. * Load averages and queue length statistics added (option -q for sar). * Per device statistics added (option -d for sar). Kernel 2.4 only. * Better accuracy when computing average for some statistics. * Display all the contents of a daily data file when the count parameter is not given on the command line. * Check sar command line options more aggressively. * iostat no longer freezes if -c and -d options are used together. * Fixed a bug that prevented iostat from displaying more than an average of three devices with 2.4 kernels (a buffer was too small). * Check added to ensure that sar and sadc commands are consistent. * sar manual page updated. * NLS updated. * Code cleaned (use smaller subroutines). * Makefile updated. * isag command updates. 2001/02/11: Version 3.3.5 - Sebastien Godard <sebastien.godard@wanadoo.fr> * iostat command improved. Take now full advantage of Stephen Tweedie's I/O accounting patch to display extended statistics (option -x). * The default value for the count parameter of the sar command is now 1 (this is how sar works with other Un*xes...). A value of 0 will indicate that reports are to be generated continuously. * Code cleaned: Now always use 'double' numbers instead of the INT_PART, INT_VAL, DEC_PART and DEC_VAL macros. * Don't assume that jiffies are 100ths of a second. Use Linux HZ definition instead. * NLS updated (small fix). * sar and iostat manual pages updated. * isag (Interactive System Activity Graph) command added. * Makefile updated. 2001/01/26: Version 3.3.4 - Sebastien Godard <sebastien.godard@wanadoo.fr> * Disk I/O statistics for the last device were counted twice when reading /proc/stat file with 2.4 kernels (sar -b). This is now fixed. * iostat command is no longer able to save its data to a file. In fact, iostat has never been supposed to work that way, and I have never really maintained this option. * iostat now also works with 2.4 kernels. It can handle the format of the /proc/stat file for both 2.2 and 2.4 kernels. * sar now reports statistics on allocated disk quotas entries instead of on used ones (sar -v). * Manual pages updated for sar and iostat. 2000/12/31: Version 3.3.3 - Sebastien Godard <sebastien.godard@wanadoo.fr> WARNING: Daily data files format has changed, and is *not* compatible with the previous one! Delete existing data files in /var/log/sa directory! * Disk usage displayed by iostat on SMP machines was wrong. This is now fixed. * iostat command cleaned: All the statistics not implemented in the standard Linux kernel have been removed (tty, iowait...). * sar can now handle I/O and transfer rate statistics with both 2.2.x and 2.4.x Linux kernels (-b option). * Removed %inode-sz that was displayed by sar -v, since the file inode-max in /proc/sys/fs no longer exists in Linux 2.4. The new 2.4.x kernels now seem to be able to allocate inode structures dynamically, and to free them when necessary (see linux/fs/inode.c). * Removed statistics on highest in-used sockets. Relevant counters have disappeared from sockstat file in /proc/net for 2.4 kernels (sar -n SOCK). * Added statistics on IP datagram fragments (sar -n SOCK). Only available for 2.4 kernels. 2000/11/19: Version 3.3.2 - Sebastien Godard <sebastien.godard@wanadoo.fr> * sar now saves timestamps in its daily data files both in UST and in the user's timezone formats. WARNING: Daily data files format has changed, and is *not* compatible with the previous one! * sar now displays timestamps in locale time when reading data from its daily data files. -t option has been added to sar, to enable it to display timestamps in the original locale time of the data file creator. * Size of various buffers made larger. * Number of interrupts per second for 'all' CPU displayed by the mpstat command was wrong. This is now fixed. * Makefile updated. * Usage message updated. 2000/09/17: Version 3.3.1 - Sebastien Godard <sebastien.godard@wanadoo.fr> * mpstat command added. * Manual page added for mpstat. * Option -h added, enabling sar to display data from a daily data file in a format that can easily be handled with pattern processing commands like awk. * Manual page updated for sar. * iostat now writes KB (for kilobytes) instead of Kb, which could have been interpreted as kilobits... * Disk accounting patch for iostat removed. * NLS updated. 2000/08/06: Version 3.2.4 - Sebastien Godard <sebastien.godard@wanadoo.fr> * Fixed a bug that prevented sar from reading its daily data files when they had been created using -I option. * Network statistics averages were sometimes wrong when reading data from a file. This is now fixed. * README-patch file updated. * Configuration script updated to deal with Debian directories. 2000/06/25: Version 3.2.3 - Sebastien Godard <sebastien.godard@wanadoo.fr> * Configuration scripts updated. Can now print a help message. * Workaround for SMP race in Linux serial driver added. This workaround is enabled by default in RPM binary packages. * sar manual page updated. * Added iostat disk accounting patch against 2.2.16 linux kernel. * Removed a few typos in the comments of the source code. 2000/06/11: Version 3.2.2 - Sebastien Godard <sebastien.godard@wanadoo.fr> * Now handle interrupts per processor better. Output improved. * Makefile modified to comply with redhat good packaging. * sysstat initialization script updated (don't su to root when we are already root). * sar now looks for sadc data collector in more places. * NLS is now enabled by default. * Silly bug in iostat disk accounting patch fixed. * Added iostat disk accounting patch against 2.2.15 linux kernel. 2000/04/02: Version 3.2 - Sebastien Godard <sebastien.godard@wanadoo.fr> * sadc no longer complains when daily data files have a null length. * Configuration script added (make config). * Statistics on sockets in use added. * Got rid of various limits (maximum number of serial lines, maximum number of network interfaces). * Better management of dynamic files contents. * Cosmetic change for timestamp display. * Manual pages updated. * Documentation added in ${PREFIX}/doc/sysstat-x.y. 2000/02/20: Version 3.1 - Sebastien Godard <sebastien.godard@wanadoo.fr> * Fixed a bug that made average numbers wrong for some statistics when reading them from a system activity file. * Fixed a bug that prevented the user from retrieving some statistics when reading them from a system activity file. * sadc no longer core-dumps on UP machines with SMP support enabled in the kernel. * System activity files are now readable by everybody. * Average statistics since boot time are now printed when interval parameter is set to 0. If interval and count parameters are not set on the command line, sar selects requested activities from the current system activity daily data file. * sadc, sa1 and sa2 manual pages moved to chapter 8 instead of 1m. * iostat disk accounting patch modified to work with md drivers. 2000/01/30: Version 3.0 - Sebastien Godard <sebastien.godard@wanadoo.fr> * sadc - system activity data collector added. * sa1, sa2 and sysstat.sh shell scripts added. * Manual pages added for sadc, sa1, sa2. * sar heavily modified to use stats sent by sadc. * System activity data file now records system restarts. * Every records in the iostat and system activity data files have their own timestamp now. * sar and iostat largely modified to use structures when reading or writing data files. * Per-process statistics added. * System minor and major fault statistics added. * TTY device statistics added. * Memory and swap space utilization statistics added. * Per-processor interrupt statistics added. * Statistics for kernel parameters (dcache, inodes, superblocks, etc.) added. * Network device statistics added. * S_TIME_FORMAT environment variable added. * Meaning of -i option has changed for sar. * -d option removed for sar since it is no longer needed (we have sadc now). * sar now uses keywords such as ALL, SUM, etc. instead of numerical parameters. * iostat disk accounting patch improved. * 'page' field in /proc/stat is no longer used by iostat (was unreliable). * Workaround for buggy RTC (or kernels?) added. Used when the number of jiffies spent by the system in the idle task is decreasing in /proc/stat. * Manual pages updated. * NLS updated: Portuguese translation added. * Makefile updated. 1999/11/28: Version 2.2 - Sebastien Godard <sebastien.godard@wanadoo.fr> * Option -d added to sar to enable it to be started as a daemon. * sar initialization script updated to use -d option. * Option -V added to sar and iostat (print version number and usage). * Fixed a bug that made CPU utilization displayed by iostat wrong on SMP machines. * Manual pages updated and moved to chapter 1 instead of 8. * sar '-m' option renamed to '-r'. * Display improved for iostat. * NLS updated: Spanish translation added. * Patch against kernel 2.2.13 added for iostat. 1999/10/24: Version 2.1 - Sebastien Godard <sebastien.godard@wanadoo.fr> * The sar and iostat commands can now work on non SMP-machines even if the kernel is compiled with SMP support enabled. * Fixed a bug that made the time displayed by iostat wrong when reading stats back from a file. * Added memory statistics: free/shared/buffer/cached pages (sar -m). * Option -h added to sar to print its header periodically. * Set unavailable fields to zero when writing iostat file. * sar now displays 'proc/s' instead of 'fork/s' since exec'ed processes are also taken into account. * Manual pages updated. * sysstat is now available in RPM format. * Code cleaned up and made safer. 1999/09/19: Version 2.0 - Sebastien Godard <sebastien.godard@wanadoo.fr> * iostat now displays logical block I/O stats for each IDE device, or global Kb/s rate for all the block devices. Stats in Kb/s for each block device are not available for standard kernels due to Linux poor disk accounting... Anyway a patch is provided in this version of 'sysstat' in the 'patch' directory to fix that. * System uptime is no longer read in /proc/uptime but computed from the cpu line in /proc/stat. * When stats are read from a file (option -f of iostat and sar), values are now computed in accordance with the interval given by the user on the command line. * Old '-o' option for iostat removed. Now iostat can save data into a file in a binary format and re-read them later (options '-o' and '-f') in the same way sar does. * Number of available processors now taken into account when retrieving CPU usage from /proc/stat. * Removed a bug that prevented 'sar -U' to work on SMP machines. * Fixed a bug that made per-CPU average usage wrong on SMP machines. * Use of option -U is now possible for sar when reading from a file even if the machine is not an SMP one. * Fixed a bug that prevented sar from re-reading stats saved in a file when -I or -U option had been used. * iostat modified to work on SMP machines. * Changed the formula used to display stats in order not to get numbers greater than UINT_MAX. * System name, release number and hostname are now saved in system activity files. * iostat now displays system name, release number and hostname when invoked. * Daily system activity file rotation added for sar. * Improved 64-bit system support. * CREDITS file added. * NLS updated: German translation added. * Manual pages updated. * Makefile updated: Do not call msgfmt if NLS is not enabled. 1999/06/25: Version 1.2 - Sebastien Godard <sebastien.godard@wanadoo.fr> * Better NLS support (date, time and numerical values, NLS enabled for sar, etc.). * System activity daily file structure changed: Is now independent of the locale and is more compact. * sar updated to support SMP machines (per CPU accounting). * Code cleaned, man pages updated... 1999/05/28: Version 1.1 - Sebastien Godard <sebastien.godard@wanadoo.fr> * NLS support added. French translation started but needs to be completed. * sar updated to support more than 16 interrupts (potential APIC interrupt sources). * A few typos removed (man pages, etc.). * Author email address updated :-) * Tested on kernel 2.2.5. 1999/03/06: Version 1.0 - Sebastien Godard <sebastien.godard@gazdefrance.com> * Initial Revision. Tested on kernel 2.0.36.