SAR(1M)
НАЗВАНИЕ
sar: sa1, sa2, sadc - получение информации о функционировании системы
СИНТАКСИС
/usr/lib/sa/sadc [сек число] [вых_файл]
/usr/lib/sa/sa1 [сек число]
/usr/lib/sa/sa2 [-u] [-b] [-d] [-y] [-c] [-w] [-a] [-q] [-v] [-m] [-A]
[-s время] [-e время] [-i сек]
ОПИСАНИЕ
Информацию о функционировании системы можно получать по
специальному запросу пользователя [см. sar(1)] или автоматически, с помощью описанных ниже программ. Операционная система имеет набор счетчиков, которые увеличиваются при выполнении некоторых системных действий.
Учитывается использование ЦП и буферов, ввод/вывод на
ленту и диск, на терминалы, переключение между процессами, выполнение системных вызовов, доступ к файлам,
работа с очередями, взаимодействие между процессами,
работа с виртуальными страницами и удаленными ресурсами.
Утилита sadc и shell-процедуры sa1 и sa2 используются
для сбора, сохранения и обработки этих данных.
Утилита sadc, сборщик данных, собирает системную информацию заданное число раз через указанное количество секунд и записывает ее в двоичном виде в вых_файл или на
стандартный вывод. Если аргументы сек и число опущены,
выводится запись специального вида. Эта возможность используется при загрузке системы, чтобы отметить момент,
когда все счетчики сбрасываются в 0. Следующая команда
из файла /etc/init.d/perf
su sys -c "/usr/lib/sa/sadc /usr/adm/sa/sa`date +%d`"
записывает в ежедневный протокол специальную запись,
отмечающую перезапуск системы.
Shell-процедура sa1, вариант sadc, используется для
сбора и сохранения данных в двоичном виде в файле
/usr/adm/sa/saдд, где дд - это текущий день. Смысл аргументов сек и число тот же, что и в случае утилиты
sadc, их подразумеваемые значения равны 1. Следующие
строки из файла /usr/spool/cron/crontabs/sys [см.
cron(1M)]
0 * * * 0,6 /usr/lib/sa/sa1
20,40 8-17 * * 1-5 /usr/lib/sa/sa1
приводят к тому, что в рабочее время информация собирается каждые 20 минут, а в остальное время - один раз в
час.
Shell-процедура sa2, вариант sar(1), записывает ежедневный отчет в файл /usr/adm/sa/sarдд. Смысл опций тот
же, что и в случае sar(1). Следующая строка из файла
/usr/spool/cron/crontabs/sys
5 18 * * 1-5 /usr/lib/sa/sa2 -s 8:00 -e 18:01 -A
позволяет выдать все сведения о системной активности,
накопленные в рабочее время.
Структура двоичного файла с ежедневной информацией такова:
struct sa {
struct sysinfo si; /* См. */
struct minfo mi; /* См. */
struct dinfo di; /* См. */
int minserve, maxserve /* Мин. и макс. загруженность
исполнителя РУФ */
int szinode; /* Число элем. в табл. описателей файлов */
int szfile; /* Число элем. в табл. файлов */
int szproc; /* Число элем. в табл. процессов */
int szlckf; /* Число элем. в табл. "закрытых" файлов */
int szlckr; /* Число элем. в табл. "закрытых" записей */
int mszinode; /* Размер табл. описателей */
int mszfile; /* Размер табл. файлов */
int mszproc; /* Размер табл. процессов */
int mszlckf; /* Макс. размер табл. "закрытых" файлов */
int mszlckr; /* Макс. размер табл. "закрытых" записей */
long inodeovf;/* Число переполнений табл. описателей */
long fileovf; /* Число переполнений табл. файлов */
long procovf; /* Число переполнений табл. процессов */
time_t ts; /* Текущее время */
long devio[NDEVS][4]; /* Информация об устройствах */
#define IO_OPS 0 /* Общее число запросов на ввод/вывод */
#define IO_BCNT 1 /* Общее число переданных блоков */
#define IO_ACT 2 /* Общее время ожидания освобождения
устройства (в тактах часов) */
#define IO_RESP 3 /* Общее время работы устройства по
вводу/выводу (в тактах часов) */
};
ФАЙЛЫ
/usr/adm/sa/saдд Файлы с ежедневной информацией.
/usr/adm/sa/sarдд Файлы с ежедневными отчетами.
/tmp/sa.adrfl Файл с адресами.
СМ. ТАКЖЕ
cron(1M).
sag(1G), sar(1), timex(1) в Справочнике пользователя.