STRACE(1M)
НАЗВАНИЕ
strace - трассировка сообщений псевдоустройств
СИНТАКСИС
strace [ид_модуля ид_устройства уровень] ...
ОПИСАНИЕ
Утилита strace, будучи вызванной без аргументов, записывает на стандартный вывод все трассировочные сообщения псевдоустройств от всех драйверов и модулей. Эти
сообщения поставляются драйвером регистрации ошибок и
трассировки событий псевдоустройств [см. log(7)]. Если
указаны аргументы, то они должны составлять тройки
(ид_модуля ид_устройства уровень), где ид_модуля
идентификатор модуля псевдоустройства, ид_устройства
идентификатор устройства, уровень - уровень приоритета
трассировки. Каждая тройка указывает, что трассировочные сообщения поступают от указанного модуля/драйвера,
устройства (обычно в качестве идентификатора устройства
задается его младший номер) и с уровнем приоритета,
меньшим или равным указанному. Задание слова all на любом из трех мест означает отсутствие соответствующего
ограничения.
Трассировочные сообщения имеют следующий формат:
номер время время_от_загрузки уровень флаги ид_модуля ид_устр-ва текст
где
номер | порядковый номер
|
время | время выдачи сообщения в формате чч:мм:сс
|
время_от_загрузки | время выдачи сообщения в тактах часов
от последней загрузки системы
|
уровень | уровень приоритета
|
флаги | E: сообщение зарегистрировано, как ошибка
F: фатальная ошибка
N: послано письмо системному администратору
|
ид_модуля | идентификатор модуля источника
|
ид_устр-ва | идентификатор устройства источника
|
текст | текст сообщения
|
Будучи запущенной, программа strace выполняется до тех
пор, пока ее не терминирует пользователь.
ПРИМЕРЫ
- Выводить все трассировочные сообщения от драйвера с
идентификатором 41:
strace 41 all all
- Выводить трассировочные сообщения от драйвера с
идентификатором 41, устройств 0, 1 и 2:
strace 41 0 1 41 1 1 41 2 0
Сообщения от устройств 0 и 1 должны иметь уровень трассировки, меньший или равный 1. Сообщения от устройства
0 и 1 должны иметь уровень трассировки, равный 0.
ОГРАНИЧЕНИЯ
Только один процесс strace может открыть драйвер регистрации ошибок и трассировки событий псевдоустройств.
Указанный драйвер хранит список троек, указанных в команде, и каждое сообщение сравнивает с этим списком,
определяя, не нужно ли его отформатировать и передать
strace. Таким образом, длинный список троек может замедлить операции над псевдоустройствами. Наибольшее
влияние strace оказывает на время выполнения операций
над теми псевдоустройствами, которые трассируются. Если
трассировочные сообщения генерируются с большей частотой, чем может обработать strace, часть сообщений будет
потеряна. Потерю сообщений можно определить по пропускам в порядковых номерах выдаваемых сообщений.
СМ. ТАКЖЕ
log(7).