Manual pages › System administration commands (1M)
sar(1M)
system activity report package
From the original Amiga UNIX 2.1 manual. Some things it mentions may not be in this release.
Also by this name: sar(1), General commands
NAME
sar: sa1, sa2, sadc - system activity report package
SYNOPSIS
/usr/lib/sa/sadc [t n] [ofile] /usr/lib/sa/sa1 [t n] /usr/lib/sa/sa2 [-ubdycwaqvmpgrkxDSAC] [-s time] [-e time] [-i sec]
DESCRIPTION
System activity data can be accessed at the special request of a user (see sar(1)) and automatically, on a routine basis, as described here. The operating system contains several counters that are incremented as various system actions occur. These include counters for CPU utilization, buffer usage, disk and tape I/O activity, TTY device activity, switching and system-call activity, file-access, queue activity, inter-process communications, paging, and Remote File Sharing.
sadc and two shell procedures, sa1 and sa2, are used to sample, save, and process this data.
sadc, the data collector, samples system data n times, with
an interval of t seconds between samples, and writes in
binary format to ofile or to standard output. The sampling
interval t should be greater than 5 seconds; otherwise, the
activity of sadc itself may affect the sample. If t and n
are omitted, a special record is written. This facility is
used at system boot time, when booting to a multiuser state,
to mark the time at which the counters restart from zero.
For example, the /etc/init.d/perf file writes the restart
mark to the daily data by the command entry:
su sys -c "/usr/lib/sa/sadc /var/adm/sa/sa`date +%d`"
The shell script sa1, a variant of sadc, is used to collect
and store data in the binary file /var/adm/sa/sadd, where dd
is the current day. The arguments t and n cause records to
be written n times at an interval of t seconds, or once if
omitted. The following entries in
/var/spool/cron/crontabs/sys will produce records every 20
minutes during working hours and hourly otherwise:
0 * * * 0-6 /usr/lib/sa/sa1
20,40 8-17 * * 1-5 /usr/lib/sa/sa1
See crontab(1) for details.
The shell script sa2, a variant of sar, writes a daily report in the file /var/adm/sa/sardd. The options are explained in sar(1). The following entry in /var/spool/cron/crontabs/sys will report important activities hourly during the working day:
5 18 * * 1-5 /usr/lib/sa/sa2 -s 8:00 -e 18:01 -i 1200 -A
The structure of the binary daily data file is:
struct sa {
struct sysinfo si;/* see /usr/include/sys/sysinfo.h */
struct minfo mi;/* defined in sys/sysinfo.h */
struct vminfo vmi;/* defined in /usr/include/sys/sysinfo.h */
rf_srv_info_t rf_srv;/* defined in /usr/include/sys/fs/rf_acct.h */
fsinfo_t rfs_in;
fsinfo_t rfs_out;/* defined in /usr/include/sys/sysinfo.h */
rfc_info_t rfc;/* defined in /usr/include/sys/fs/rf_acct.h */
struct kmeminfo km;/* defined in /usr/include/sys/sysinfo.h */
struct bpbinfo bi[4];/* Co-processor info defined in sys/sysinfo.h */
int bpb_utilize/* Co-processor utilize flag */
int minserve, maxserve;/* RFS server low and high water marks */
int szinode; /* current size of inode table */
int szfile; /* current size of file table */
int szproc; /* current size of proc table */
int szlckf; /* current size of file record header table */
int szlckr; /* current size of file record lock table */
int mszinode; /* size of inode table */
int mszfile; /* size of file table */
int mszproc; /* size of proc table */
int mszlckf; /* maximum size of file record header table */
int mszlckr; /* maximum size of file record lock table */
long inodeovf;/* cumulative overflows of inode table */
long fileovf; /* cumulative overflows of file table */
long procovf; /* cumulative overflows of proc table */
time_t ts; /* time stamp, seconds */
int apstate; /* Co-processor flag */
long devio[NDEVS][5];/* device unit information */
#define IO_OPS 0/* cumulative I/O requests */
#define IO_BCNT 1/* cumulative blocks transferred */
#define IO_ACT 2/* cumulative drive busy time in ticks */
#define IO_RESP 3/* cumulative I/O resp time in ticks */
#define IO_ID 4
};
FILES
/var/adm/sa/sadd daily data file /var/adm/sa/sardddaily report file /tmp/sa.adrfl address file
SEE ALSO
crontab(1), sag(1G), sar(1), timex(1).