Trace Op Script Processing on Devices Running Junos OS
Op script tracing operations track op script operations and record them in a log file. The logged error descriptions provide detailed information to help you solve problems faster.
On Junos OS, the default operation of op script tracing is to log important events, which include errors, warnings, progress messages, and script processing events, in the /var/log/op-script.log file on the device. When the file op-script.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 op-script.log.0.gz, then op-script.log.1.gz, until there are 10 trace files. Then the oldest trace file (op-script.log.9.gz) is overwritten.
Junos OS Evolved captures trace data for all
applications by default and collects the data for all script types in trace files that
correspond to the cscript application. To view the trace data, issue
the show trace application cscript command. For more information, see
Trace Script Processing on Devices Running Junos OS Evolved.
Minimum Configuration for Enabling Traceoptions for Op Scripts
If no op script trace options are configured, the simplest way to view the trace
output of an op script is to configure the output trace flag and
issue the show log op-script.log | last command. To do this,
perform the following steps:
If you have not done so already, enable an op script by including the
filestatement at the[edit system scripts op]hierarchy level:[edit system scripts op] user@host# set file filename
Enable trace options by including the
traceoptions flag outputstatement at the[edit system scripts op]hierarchy level:[edit system scripts op] user@host# set traceoptions flag output
Commit the configuration.
[edit] user@host# commit and-quit
Display the resulting trace messages recorded in the file /var/log/op-script.log file. At the end of the log is the output generated by the op script you enabled in Step 1. To display the end of the log, issue the
show log op-script.log | lastoperational mode command:user@host> show log op-script.log | last
Table 1 summarizes
useful filtering commands that display selected portions of the
op-script.log file.
|
Task |
Command |
|---|---|
|
Display logging data associated with all op script processing. |
|
|
Display processing for only the most recent operation. |
|
|
Display processing for script errors. |
|
|
Display processing for a particular script. |
|
Example: Minimum Configuration for Enabling Traceoptions for Op Scripts
Display the trace output of the op script file source-route.xsl:
[edit]
system {
scripts {
op {
file source-route.xsl;
traceoptions {
flag output;
}
}
}
}
[edit] user@host# commit [edit] user@host# run show log op-script.log | last
Configure Tracing of Local Op Scripts
You cannot change the directory (/var/log) to which trace files
are written. However, you can customize other trace file settings for local op
scripts by including the following statements at the [edit system scripts op
traceoptions] hierarchy level:
[edit system scripts op traceoptions] file <filename> <files number> <size size> <world-readable | no-world-readable>; flag all; flag events; flag input; flag offline; flag output; flag rpc; flag xslt; no-remote-trace;
You can only customize tracing operations for local op scripts. For remote op
scripts (op scripts executed using the op url command), Junos
OS always logs the default trace events in the default op script log file.
These statements are described in the following sections:
- Configure the Op Script Log Filename
- Configure the Number and Size of Op Script Log Files
- Configure Access to Op Script Log Files
- Configure the Op Script Trace Operations
Configure the Op Script Log Filename
By default, the name of the file that records trace output for all op scripts is
op-script.log. You can record the trace output for
local op scripts in a different file by including the file
statement at the [edit system scripts op traceoptions]
hierarchy level:
[edit system scripts op traceoptions] file filename;
The file statement does not affect the trace output location
for remote op scripts, which always use the default log file
op-script.log.
Configure the Number and Size of Op Script Log Files
By default, when the trace file reaches 128 KB in size, it is renamed and compressed to filename.0.gz, then 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 op
traceoptions file filename] hierarchy level:
[edit system scripts op traceoptions file filename] files number size size;
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 to filename.0.gz, and a new file called filename is created. When filename reaches 640 KB, filename.0.gz is renamed filename.1.gz and filename is renamed and compressed to filename.0.gz. This process repeats until there are 20 trace files. Then the oldest file (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.
Configure Access to Op Script Log Files
By default, access to the op 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 op traceoptions file filename] hierarchy
level.
[edit system scripts op traceoptions file filename] (world-readable | no-world-readable);
The no-world-readable statement restricts op script log access
to the owner. The world-readable statement enables unrestricted
access to the op script log file.
Configure the Op 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 for local op scripts by
including the following statements at the [edit system scripts op
traceoptions] hierarchy level:
[edit system scripts op traceoptions] flag all; flag events; flag input; flag offline; flag output; flag rpc; flag xslt;
The flag statement does not affect the trace output for
remote op scripts, which only log default trace events.
Table 2 describes the meaning of the op script tracing flags.
|
Flag |
Description |
Default Setting |
|---|---|---|
|
|
Trace all operations. |
Off |
|
|
Trace important events, including errors, warnings, progress messages, and script processing events. |
On |
|
|
Trace op script input data. |
Off |
|
|
Generate data for offline development. |
Off |
|
|
Trace op script output data. |
Off |
|
|
Trace op script RPCs. |
Off |
|
|
Trace the Extensible Stylesheet Language Transformations (XSLT) library. |
Off |