sa1(1M) — Series 800 Only
NAME
sa1, sa2, sadc − system activity report package
SYNOPSIS
/usr/lib/sa/sa1 [t n]
/usr/lib/sa/sa2 [−ubdycwaqvmA] [−s time] [−e time] [−i sec]
/usr/lib/sa/sadc [t n] [ofile]
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 CPU utilization counters, buffer usage counters, disk and tape I/O activity counters, tty device activity counters, switching and system-call counters, file-access counters, queue activity counters, and counters for inter-process communications.
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 to mark the time at which the counters restart from zero. The /etc/rc entry:
/usr/lib/sa/sadc /usr/adm/sa/sa‘date +%d‘
writes the special record to the daily data file to mark the system restart.
The shell script sa1, a variant of sadc, is used to collect and store data in binary file /usr/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, if placed in crontab (see cron(1M)):
0 ∗ ∗ ∗ 0,6 /usr/lib/sa/sa1
0 8−17 ∗ ∗ 1−5 /usr/lib/sa/sa1 1200 3
0 18−7 ∗ ∗ 1−5 /usr/lib/sa/sa1
produce records every 20 minutes during working hours and hourly otherwise.
The shell script sa2, a variant of sar, writes a daily report in file /usr/adm/sa/sardd. The options are explained in sar(1). The crontab entry:
5 18 ∗ ∗ 1−5 /usr/lib/sa/sa2 −s 8:00 −e 18:01 −i 3600 −A
reports 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 ∗/
int sztext;/∗ current entries of text table ∗/
int szinode;/∗ current entries of inode table ∗/
int szfile;/∗ current entries of file table ∗/
int szproc;/∗ current entries of proc table ∗/
int msztext;/∗ size of text table ∗/
int mszinode;/∗ size of inode table ∗/
int mszfile;/∗ size of file table ∗/
int mszproc;/∗ size of proc table ∗/
long textovf;/∗ cumul. overflows of text table ∗/
long inodeovf;/∗ cumul. overflows of inode table ∗/
long fileovf;/∗ cumul. overflows of file table ∗/
long procovf;/∗ cumul. overflows of proc table ∗/
time_t ts;/∗ time stamp, seconds ∗/
long devio[NDEVS][4];/∗ device info for up to NDEVS units ∗/
#define IO_OPS0/∗ cumul. I/O requests ∗/
#define IO_BCNT1/∗ cumul. blocks transferred ∗/
#define IO_ACT2/∗ cumul. drive busy time in ticks ∗/
#define IO_RESP3/∗ cumul. I/O resp time in ticks ∗/
};
FILES
/tmp/sa.adrfl address file
/usr/adm/sa/sadd daily data file
/usr/adm/sa/sardd daily report file
SEE ALSO
STANDARDS CONFORMANCE
sa1: SVID2
sa2: SVID2
sadc: SVID2
Hewlett-Packard Company — HP-UX Release 9.0: August 1992