Projects / sysstat

sysstat

The sysstat package contains the sar, sadf, iostat, mpstat, and pidstat commands for Linux. The sar command collects and reports system activity information. The statistics reported by sar concern I/O transfer rates, paging activity, process-related activites, interrupts, network activity, memory and swap space utilization, CPU utilization, kernel activities, and TTY statistics, among others. The sadf command may be used to display data collected by sar in various formats. The iostat command reports CPU statistics and I/O statistics for tty devices and disks. The pidstat command reports statistics for Linux processes. The mpstat command reports global and per-processor statistics.

Tags Monitoring Systems Administration
Licenses GPL
Operating Systems POSIX Linux
Implementation C

Tweet this project Short link

Rss Recent releases

  • Rrelease-mid
  •  24 May 2009 18:29
  • Rrelease-after

Changes: The option -z has been added to iostat, and tells iostat to omit output for any devices for which there was no activity during the sample period. An mpstat bug has been fixed where interrupt values were read as integers instead of unsigned integers. sar -n ALL didn't select IPv6 statistics. This is now fixed. NLS: a Latvian translation has been added.

  • Rrelease-mid
  •  02 Apr 2009 08:22
  • Rrelease-after

    Changes: sadc can now collect partition statistics in addition to disk ones. A memory corruption has been fixed in pidstat and iostat. This corruption could happen when a list of comma-separated values was entered on the command line following the -p option. configure now takes into account a new variable named rcdir, which may be used to specify the directory where startup scripts will be installed. NLS translations have been updated.

    • Rrelease-mid
    •  08 Mar 2009 14:40
    • Rrelease-after

    Changes: A crash with sar where a pointer was freed twice was fixed. NLS translations have been updated.

    • Rrelease-mid
    •  01 Mar 2009 17:52
    • Rrelease-after

    Changes: Power management statistics have been added to sar. This release no longer truncates the interval of time to 32 bits, as this may cause some problems when displaying average values statistics on machines with hundreds of CPUs. A small bug in sar where it didn't parse arguments properly when some options were entered in a specific order has been fixed.

    • Rrelease-mid
    •  11 Jan 2009 15:06
    • Rrelease-after

    Changes: Support was added for IPv6-related protocols. iostat now displays statistics for devices only (and not partitions) when its -d option is not used. Extended statistics are now available from iostat even for partitions with recent kernels. A bug was fixed where iostat was unable to read stats from sysfs for devices which had a slash in their names (e.g. /dev/cciss/c0d0). A bug was fixed in iostat where %CPU spent servicing hard and soft IRQ were counted twice.

    Rss Recent comments

    Rcomment-before 02 Sep 2007 02:40 Rcomment-trans godard Rcomment-after

    Re: report sar7.16 problem and attach patch for it
    Thanks for this patch. It has been included in sysstat 8.0.0.

    Rcomment-before 02 Aug 2007 00:30 Rcomment-trans yuyongcong Rcomment-after

    report sar7.16 problem and attach patch for it
    Hello, Mr.Sebastien Godard .

    When I used sar7.16,I found a problem.

    After adding the parameters "-s 23:59:45 -e 00:00:15",it means sar will read the records at 23:59:45~00:00:15 from sarfile,but

    the result is that sar only read the records at 23:59:45-23:59:55 from sarfile,the records after 00:00:00 didn't read from sarfile.

    I have made a patch to solve the problem.

    To repeat this problem,you could do as following:

    Step1:run the script

    ----------------------------------------------------------------------

    #!/bin/sh

    DATE=`date +%m%d%H%M%S`

    date -s 23:59:45

    echo "Now time has been set "`date`

    echo "Sar starts to write in sar.$DATE "

    sar 5 10 -o ./sar.$DATE

    hwclock --hctosys

    -----------------------------------------------------------------------

    After running,it will create a sarfile.

    Step2:read created sarfile

    Sar Version: sar 7.16

    [root@localhost sysstat-7.1.6]# sar -V

    sysstat version 7.1.6

    (C) Sebastien Godard (sysstat <at> wanadoo.fr)

    [root@localhost sysstat-7.1.6]# sar -f testsar/sar.0810000205

    Linux (localhost.localdomain) 08/10/2007

    23:59:45 CPU %user %nice %system %iowait %steal %idle

    23:59:50 all 4.19 0.00 6.59 0.00 0.00 89.22

    23:59:55 all 8.02 0.20 11.42 0.00 0.00 80.36

    00:00:00 all 5.59 0.00 9.58 0.00 0.00 84.83

    00:00:05 all 4.60 0.40 6.60 0.00 0.00 88.40

    00:00:10 all 4.61 0.00 6.61 0.00 0.00 88.78

    00:00:15 all 3.99 0.20 9.58 2.20 0.00 84.03

    00:00:20 all 4.80 0.20 8.20 0.60 0.00 86.20

    00:00:25 all 4.39 0.20 6.39 0.00 0.00 89.02

    00:00:30 all 4.21 0.00 7.62 0.00 0.00 88.18

    00:00:35 all 4.39 0.20 7.39 0.20 0.00 87.82

    00:00:40 all 4.20 0.20 7.40 0.00 0.00 88.20

    00:00:45 all 7.80 0.00 9.20 1.00 0.00 82.00

    Average: all 5.06 0.13 8.05 0.33 0.00 86.42

    Created sarfile starts with 23:59:45 ends with 00:00:45

    Step3:Problem turn out

    [root@localhost sysstat-7.1.6]# sar -f testsar/sar.0810000205 -s 23:59:45 -e 00:00:15

    Linux (localhost.localdomain) 08/10/2007

    The bug can be fixed with the following patch:

    Signed-off-by: "Yu Yongcong" <yuyc@cn.fujitsu.com>

    --- sysstat-7.1.6/sar.c.orig 2007-08-14 08:09:28.000000000 +0800

    +++ sysstat-7.1.6/sar.c 2007-08-14 10:13:47.000000000 +0800

    @@ -840,6 +840,13 @@

    set_timestamp(!curr, cur_time[!curr], 16);

    /* Set current timestamp */

    set_timestamp(curr, cur_time[curr], 16);

    +

    + if (tm_start.use && file_stats[!curr].ust_time

    + && (file_stats[curr].ust_time > file_stats[!curr].ust_time)

    + && (file_stats[curr].hour < file_stats[!curr].hour)) {

    + file_stats[curr].hour += 24;

    + rectime.tm_hour += 24;

    + }

    /* Check time (2) */

    if (use_tm_start && (datecmp(&rectime, &tm_start) < 0))

    @@ -1622,6 +1629,9 @@

    ((interval < 0) && !from_file[0] && !to_file[0]))

    set_default_file(&rectime, from_file);

    + if (tm_start.use && tm_end.use && (tm_end.tm_hour < tm_start.tm_hour))

    + tm_end.tm_hour += 24;

    +

    /*

    * Check option dependencies

    */

    Here is the output after the fix:

    [root@localhost sysstat-7.1.6]#sar -f testsar/sar.0810000205 -s 23:59:45 -e 00:00:15

    Linux (localhost.localdomain) 08/10/2007

    23:59:45 CPU %user %nice %system %iowait %steal %idle

    23:59:50 all 4.19 0.00 6.59 0.00 0.00 89.22

    23:59:55 all 8.02 0.20 11.42 0.00 0.00 80.36

    00:00:00 all 5.59 0.00 9.58 0.00 0.00 84.83

    00:00:05 all 4.60 0.40 6.60 0.00 0.00 88.40

    00:00:10 all 4.61 0.00 6.61 0.00 0.00 88.78

    00:00:15 all 3.99 0.20 9.58 2.20 0.00 84.03

    Average: all 5.16 0.13 8.40 0.37 0.00 85.94

    That's all.

    Best Regards.

    Rcomment-before 28 Dec 2004 13:18 Rcomment-trans godard Rcomment-after

    Re: fix for spec file
    OK: spec file updated with sysstat 5.1.4.

    Rcomment-before 17 Dec 2004 13:30 Rcomment-trans godard Rcomment-after

    Re: compile errors on 2.6

    > Hey, just tried to do an rpmbuild

    > --rebuild on 5.1.3

    >

    > noticed that the build failed because

    > MAX_BLKDEV isn't defined for 2.6

    > kernels, for some reason it was removed

    > from major.h.

    Yes: MAX_BLKDEV was removed from linux/major.h in 2.6 kernels. Sysstat 5.1.4 has been updated to take this into account.

    Rcomment-before 17 Dec 2004 13:26 Rcomment-trans godard Rcomment-after

    Re: after all that, sar doesn't work

    > pseries-loaner:/usr/src/packages/SOURCES/sysstat-5.1.3

    > # ./sar -u 2 5

    > exec: No such file or directory

    >

    This is because sar tries to launch its data collector (sadc) and doesn't find it. Enter "make install" after compiling to install each component in its directory before using sar.

    A7659837936f968b1afe3024bbc4d952_thumb

    Project Spotlight

    Scheture

    Schematic capture for IC design.

    C560cf4d49bec10acfa3fe0fa524fe96_thumb

    Project Spotlight

    Harald Scan

    A Bluetooth discovery scanner.