Операторы трассировки позволяют управлять файлом трассировки и его содержимым. Оператор трассировки выглядит следующим образом:

traceoptions
["trace file" [replace] [size ftytes[k|m] files n]]
[nostamp]
параметры трассировки [except параметры трассировки]
;

Его составляющие: trace_file - Указывает файл, в который записывается вывод трассировки. Его назначение полностью идентично назначению аргумента файл трассировки командной строки gated.

replace - Переписывает существующий файл трассировки. В отсутствие этого ключевого слова вывод трассировки добавляется к существующему содержимому файла.

size bytes[k|m] [files n] - Ограничивает файл трассировки размером в определенное число байт (bytes). Необязательные суффиксы k и m обозначают тысячи (k) и миллионы (m) байт. Таким образом, значения 10000000 и Ют эквивалентны. Размер файла трассировки не может быть меньше, чем 10k байт, n определяет максимальное число сохраняемых файлов трассировки. Когда файл трассировки достигает максимального размера, он сохраняется под именем trace_file.О, trace_file. 1, trace_file.2 и та к до trace_file.n. Следующее сохранение приводит к перезаписи trace_file.0. Значение п должно быть не меньше 2.

nostamp - Указывает, что строки файла трассировки не должны начинаться с отметки времени. По умолчанию отметка времени проставляется в каждой строке.

параметры трассировки

Указывает события, трассировку которых будет выполнять gated. Каждый из параметров трассировки обозначается определенным ключевым словом. Существуют следующие параметры трассировки: none - Отключает трассировку.

all - Включает глобальную трассировку всех типов.

general - Включает трассировку normal и route, state. Трассировка переходов автоматов состояний для протоколов OSPF и BGP. В документах RFC эти протоколы описываются при помощи диаграмм или таблиц конечных автоматов состояний. Переход протокола из одного состояния в другое основан на возникновении определенных событий. К примеру, состояние idle может смениться на состояние connect в результате возникновения события открытия соединения. Этот узко специализированный флаг трассировки полезен только тем, кто досконально знает соответствующие протоколы. Используйте этот параметр совместно с оператором протокола для трассировки изменения состояний этого протокола. normal - Трассировка нормальных взаимодействий протоколов. Трассировка ошибок выполняется всегда.


policy - Трассировка применения правил маршрутизации. Используется для проверки корректности конфигурации правил маршрутизации.

task - Трассировка обработки системного уровня.

timer - Трассировка различных таймеров протокола или других таймеров того же уровня.

route - Трассировка изменений таблицы маршрутизации. Используйте для проверки корректности маршрутов, установленных протоколом.

detail - Трассировка содержимого пакетов маршрутизатора. Должен быть определен до установки параметра send или recv.

send - Ограничивает трассировку detail пакетами, исходящими от маршрутизатора.

recv - Ограничивает трассировку detail пакетами, полученными маршрутизатором. Без этих двух параметров происходит трассировка всех пакетов при указании detail.

symbols - Трассировка имен, полученных от ядра при запуске. См. описание ключа командной строки -t.

iflist - Трассировка списка интерфейсов ядра. См. описание ключа команд- ной строки -t.

parse - Трассировка работы лексического анализатора и интерпретатора.

adv - Трассировка выделения и освобождения блоков.

except параметры трассировки - Отключает указанные параметры трассировки. Данный элемент должен использоваться в сочетании с параметрами трассировки, включающими трассировку различных типов. Например, traceoptions all except state включает все виды трассировки, за исключением трассировки состояний конечных автоматов. gated позволяет управлять трассировкой как из командной строки, так и посредством файла настройки. В общем, в командной строке gated могут указываться те же параметры, что и в файле настройки, detail, send и recv могут фигурировать только в файле настройки.

Два других параметра, symbols и if list, используются в основном в командной строке. Указание параметров трассировки при помощи ключа командной строки -t описано в разделе, посвященном команде gated.

Некоторые из параметров трассировки будут полезны только разработчикам протоколов и другим специалистам. Для большинства из нас информацию, необходимую для отладки маршрутизации, обеспечивает параметр general, включающий трассировку normal и route. Время от времени при тестировании правил маршрутизации возникает потребность в параметре policy. Однако в большинстве случаев трассировка не нужна.