Trace statements control tracing options. GateD's tracing options may be configured at many levels. Tracing options include the file specifications, control options, and global and protocol-specific tracing options. Unless overridden, tracing options from the next higher level are inherited by lower levels. For example, BGP peer tracing options are inherited from BGP group tracing options, which are inherited from global BGP tracing options, which are inherited from global GateD tracing options. At each level, tracing specifications override the inherited options.
There are two types of global options: those which only affect global operations and those which have potential significance to protocols.
The trace flags that only have global significance are:
The trace flags that have potential significance to protocols are:
Not all of the above options apply to all of the protocols. In some cases their use does not make sense (for instance, RIP does not have a state machine) and in some instances the requested tracing has not been implemented (such as RIP support of the policyoption).
It is not currently possible to specify packet tracing from the command line. This is because a global option for packet tracing would potentially create too much output.
When protocols inherit their tracing options from the global tracing options, tracing levels that don't make sense (such as parse, adv and packet tracing options) are masked out.
Global tracing statements have an immediate effect, especially parsing options that affect the parsing of the configuration file. Tracing values inherited by protocols specified in the configuration file are initially inherited from the global options that are currently in effect as the protocol configuration entries are parsed, unless they are overridden by more specific options. After the configuration file is read, tracing options that were not explicitly specified are inherited from the global options in effect at the end of the configuration file.
Tracing of packets is very flexible. For any given protocol there are one or more options for tracing packets. All protocols allow use of the packets keyword for tracing all packets sent and received by the protocol. Most protocols have other options for limiting tracing to a useful subset of packet types. These tracing options can be further controlled with the following modifiers:
Detail, if specified, must be before send or recv. If a protocol allows for several different types of packet tracing, modifiers may be applied to each individual type. But be aware that within one tracing specification the trace flags are summed up, so specifying detail packets will turn on full tracing for all packets.
traceoptions ["trace_file" [replace] [size size[k|m] files files]] [control_options] trace_options [except trace_options] ; traceoptions none ;
trace_file_option -
["trace_file" [replace] [size size[k|m] files files]]
This sequence of options are used to specify the name of the trace file (trace_file) or files and parameters about theses files. Trace files can be specified as a global parameter for all of GateD or for a protocol instance or for a peer or peers within a protocol.
trace_file
Specifies the file to receive tracing information. If this file name does not begin with a slash (/),
the directory where gated was started is prepended to the name.
replace
sizesize[k|m] filesfiles
control_options
trace_options
none
Last updated April 27, 1997