Tracing SNMP Script Processing
SNMP script tracing operations track SNMP script operations and record them in a log file. The logged error descriptions provide detailed information to help you solve problems faster.
The default operation of SNMP script tracing is to log important
events, which include errors, warnings, progress messages, and script
processing events, in the
/var/log/snmp.log file on the device. When the file
snmp.log reaches 128 kilobytes (KB), it is renamed with a number 0 through
9 (in ascending order) appended to the end of the file and then compressed.
The resulting files are
snmp.log.1.gz, until there
are 10 trace files. Then the oldest trace file (
snmp.log.9.gz) is overwritten.
Minimum Configuration for Enabling Traceoptions for SNMP Scripts
If no SNMP script trace options are configured, the simplest way to view the trace output of an SNMP script is to configure the output trace flag and issue the show log snmp.log | last command. To do this, perform the following steps:
Issue the commit command.user@host# commit
To display the resulting trace messages recorded at the end of the
/var/log/snmp.logfile, issue the show log snmp.log | last operational mode command.user@host# run show log snmp.log | last
Table 1 summarizes useful filtering commands that display selected portions of the snmp.log file.
Table 1: SNMP Script Tracing Operational Mode Commands
Display logging data associated with all SNMP script processing.
show log snmp.log
Display processing for only the most recent operation.
show log snmp.log | last
Display processing for script errors.
show log snmp.log | match error
Display processing for a particular script.
show log snmp.log | match filename
Example: Minimum Configuration for Enabling Traceoptions for SNMP Scripts
Display the trace output of the SNMP script file
sample_snmp.slax in the default SNMP script log
user@host> show snmp mib get .18.104.22.168.4.1.2622.214.171.124.126.96.36.199
juniperMIB.188.8.131.52.1.1.1 = 211
user@host> show log snmp.log | last
Mar 1 11:00:09 snmp script processing begins Mar 1 11:00:09 running snmp script 'sample_snmp.slax' Mar 1 11:00:09 opening snmp script '/var/run/scripts/snmp//sample_snmp.slax' Mar 1 11:00:09 snmp script input Mar 1 11:00:09 begin dump <?xml version="1.0" standalone="yes"?> <snmp-script-input> <snmp-action>get</snmp-action> <snmp-oid>.184.108.40.206.4.1.26220.127.116.11.18.104.22.168</snmp-oid> </snmp-script-input> Mar 1 11:00:09 end dump Mar 1 11:00:09 reading snmp script 'sample_snmp.slax' Mar 1 11:00:09 snmp script output Mar 1 11:00:09 begin dump <?xml version="1.0"?> <snmp-script-results> <snmp-oid>.22.214.171.124.4.1.26126.96.36.199.188.8.131.52</snmp-oid> <snmp-type>Integer32</snmp-type> <snmp-value>211</snmp-value> </snmp-script-results> Mar 1 11:00:09 end dump Mar 1 11:00:09 inspecting snmp output 'sample_snmp.slax' Mar 1 11:00:09 sample_snmp.slax triggered for oid = .184.108.40.206.4.1.26220.127.116.11.18.104.22.168, with type = Integer32, and with value = 211 Mar 1 11:00:09 finished snmp script 'sample_snmp.slax' Mar 1 11:00:09 snmp script processing ends
Configuring Tracing of SNMP Scripts
You cannot change the directory (
/var/log) to which trace files are written. However, you can customize other
trace file settings by including the following statements at the [edit system scripts snmp traceoptions] hierarchy level:
These statements are described in the following sections:
Configuring the SNMP Script Log Filename
By default, the name of the file that records trace output is
snmp.log. You can specify a different name by including
the file statement at the [edit system scripts snmp
traceoptions] hierarchy level.
Configuring the Number and Size of SNMP Script Log Files
By default, when the trace file reaches 128 KB in size,
it is renamed and compressed to
filename.1.gz, and so on, until there are 10 trace files.
Then the oldest trace file (
filename.9.gz) is overwritten.
You can configure the limits on the number and size of trace files by including the following statements at the [edit system scripts snmp traceoptions file filename] hierarchy level:
For example, set the maximum file size to 640 KB and the
maximum number of files to 20. When the file that receives the output
of the tracing operation (
filename) reaches 640 KB, it is renamed and compressed
filename.0.gz, and a new file called
filename is created. When
filename reaches 640 KB,
filename.0.gz is renamed
filename is renamed and compressed
filename.0.gz. This process repeats until there are 20 trace files. Then the oldest
filename.19.gz) is overwritten.
The number of files can range from 2 through 1000 files. The file size can range from 10 KB through 1 gigabyte (GB).
If you set either a maximum file size or a maximum number of trace files, you also must specify the other parameter and a filename.
Configuring Access to SNMP Script Log Files
By default, access to the SNMP script log file is restricted to the owner. You can manually configure access by including the world-readable or no-world-readable statement at the [edit system scripts snmp traceoptions file filename] hierarchy level.
The no-world-readable statement restricts SNMP script log access to the owner. The world-readable statement enables unrestricted access to the SNMP script log file.
Configuring the SNMP Script Trace Operations
By default, the traceoptions events flag is turned on, regardless of the configuration settings, and only important events are logged. This includes errors, warnings, progress messages, and script processing events. You can configure the trace operations to be logged by including the following statements at the [edit system scripts snmp traceoptions] hierarchy level:
Table 2 describes the meaning of the SNMP script tracing flags.
Table 2: SNMP Script Tracing Flags
Trace all operations.
Trace important events, including errors, warnings, progress messages, and script processing events.
Trace SNMP script input data.
Generate data for offline development.
Trace SNMP script output data.
Trace SNMP script RPCs.
Trace the Extensible Stylesheet Language Transformations (XSLT) library.