sar(1M)
NAME
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 [−ubdycwaqvmprA] [−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 a number of 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 and paging.
Sadc and shell procedures, sa1 and sa2, are used to sample, save, and process this data.
Sadc, the data collector, samples system data n times every t seconds and writes in binary format to ofile or to standard output. 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/rc 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 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 entries in /usr/spool/cron/crontabs/sys (see cron(1M)):
0 ∗ ∗ ∗ 0-6 /usr/lib/sa/sa1
20,40 8−17 ∗ ∗ 1−5 /usr/lib/sa/sa1
will produce records every 20 minutes during working hours and hourly otherwise.
The shell script sa2, a variant of sar(1), writes a daily report in file /var/adm/sa/sardd. The options are explained in sar(1). The /usr/spool/cron/crontabs/sys entry:
5 18 ∗ ∗ 1−5 /usr/lib/sa/sa2 −s 8:00 −e 18:01 −i 3600 −A
will report important activities hourly during the working day.
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 ∗/
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 ∗/
long devio[NDEVS][4];/∗ device unit information ∗/
#define IO_OPS0/∗ cumulative I/O requests ∗/
#define IO_BCNT1/∗ cumulative blocks transferred ∗/
#define IO_ACT2/∗ cumulative drive busy time in ticks ∗/
#define IO_RESP3/∗ cumulative I/O resp time in ticks ∗/
};
FILES
/var/adm/sa/sadd daily data file
/var/adm/sa/sardd daily report file
/tmp/sa.adr address file
SEE ALSO
cron(1M).
sag(1G), sar(1), timex(1) in the CX/UX User’s Reference Manual.
CX/UX Administrator’s Reference