跟踪运行 Junos OS 的设备上的 SNMP 脚本处理
SNMP 脚本跟踪作跟踪 SNMP 脚本作并将其记录在日志文件中。记录的错误说明提供了详细信息,可帮助您更快地解决问题。
Junos OS上,SNMP 脚本跟踪的默认作是在设备上的 /var/log/snmp.log 文件中记录重要事件,包括错误、警告、进度消息和脚本处理事件。当文件 snmp.log 达到 128 KB 时,将重命名,并在文件末尾附加一个数字 0 到 9(按升序排列),然后进行压缩。生成的文件 snmp.log.0.gz,然后 snmp.log.1.gz,直到有 10 个跟踪文件。然后,将覆盖最早的跟踪文件 (snmp.log.9.gz)。
默认情况下,Junos OS Evolved 捕获所有应用程序的跟踪数据,并在与 cscript 应用程序对应的跟踪文件中收集所有脚本类型的数据。要查看跟踪数据,请发出 show trace application cscript 命令。有关更多信息,请参阅 在运行 Junos OS 演化版的设备上进行跟踪脚本处理。
为 SNMP 脚本启用跟踪选项的最低配置
如果未配置 SNMP 脚本追踪选项,则查看 SNMP 脚本追踪输出的最简单方法是配置 output 追踪标志并发出 show log snmp.log | last 命令。为此,请执行以下步骤:
如果尚未执行此作,请通过在
[edit system scripts snmp]层次结构级别包含file语句来启用 SNMP 脚本。[edit system scripts snmp] user@host# set file filename oid oid
通过在
[edit system scripts snmp]层次结构级别包含traceoptions flag output语句来启用跟踪选项。[edit system scripts snmp] user@host# set traceoptions flag output
提交配置。
[edit] user@host# commit and-quit
要显示记录在 /var/log/snmp.log 文件末尾的结果跟踪消息,请发出
show log snmp.log | last作模式命令。user@host> show log snmp.log | last
表 1 总结了显示文件选定部分 snmp.log 的有用过滤命令。
| 任务 |
命令 |
|---|---|
| 显示与所有 SNMP 脚本处理相关联的日志记录数据。 |
|
| 仅显示最近作的处理。 |
|
| 显示脚本错误的处理。 |
|
| 显示特定脚本的处理。 |
|
示例:为 SNMP 脚本启用跟踪选项的最低配置
在默认 SNMP 脚本日志文件中显示 SNMP 脚本文件 sample_snmp.slax 的跟踪输出:
[edit]
system {
scripts {
snmp {
file sample_snmp.slax {
oid .1.3.6.1.4.1.2636.13.61.1.9.1.1;
}
traceoptions {
flag output;
}
}
}
[edit] user@host# commit and-quit
user@host> show snmp mib get .1.3.6.1.4.1.2636.13.61.1.9.1.1.1 juniperMIB.13.61.1.9.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>.1.3.6.1.4.1.2636.13.61.1.9.1.1.1</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>.1.3.6.1.4.1.2636.13.61.1.9.1.1.1</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 = .1.3.6.1.4.1.2636.13.61.1.9.1.1.1, 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
配置 SNMP 脚本的跟踪
无法更改将跟踪文件写入的目录 (/var/log)。但是,您可以通过在 [edit system scripts snmp traceoptions] 层次结构级别包含以下语句来自定义其他跟踪文件设置:
[edit system scripts snmp 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;
以下部分介绍了这些语句:
配置 SNMP 脚本日志文件名
默认情况下,记录 SNMP 脚本追踪输出的文件的名称为 snmp.log。您可以通过在[edit system scripts snmp traceoptions]层次结构级别包含file语句来指定其他名称。
[edit system scripts snmp traceoptions] file filename;
配置 SNMP 脚本日志文件的数量和大小
默认情况下,当跟踪文件的大小达到 128 KB 时,将重命名并压缩为 filename.0.gz,然后 filename.1.gz,依此类推,直到有 10 个跟踪文件。然后,最早的跟踪文件 (filename.9.gz) 将被覆盖。
您可以通过在 [edit system scripts snmp traceoptions file filename] 层次结构级别包含以下语句来配置跟踪文件的数量和大小限制:
[edit system scripts snmp traceoptions file filename] files number size size;
例如,将最大文件大小设置为 640 KB,将最大文件数设置为 20。当接收跟踪作 (filename) 输出的文件达到 640 KB 时,将其重命名并压缩为 filename.0.gz,并创建一个名为 filename 的新文件。当达到 640 KB 时 filename , filename.0.gz 重命名为 filename.1.gz,并 filename 重命名并压缩为 filename.0.gz。重复此过程,直到有 20 个跟踪文件。然后覆盖最早的文件 (filename.19.gz)。
文件数量可以从 2 到 1000 个文件不等。文件大小可以从 10 KB 到 1 GB 不等。
如果设置最大文件大小或最大跟踪文件数,则还必须指定其他参数和文件名。
配置对 SNMP 脚本日志文件的访问
默认情况下,对 SNMP 脚本日志文件的访问仅限于所有者。您可以通过在[edit system scripts snmp traceoptions file filename]层次结构级别包含 world-readable 或 no-world-readable 语句来手动配置访问。
[edit system scripts snmp traceoptions file filename] (world-readable | no-world-readable);
该 no-world-readable 语句将 SNMP 脚本日志访问权限限制为所有者。该 world-readable 语句允许对 SNMP 脚本日志文件进行无限制访问。
配置 SNMP 脚本追踪作
默认情况下,无论配置设置如何,traceoptions events 标志都会处于打开状态,并且仅记录重要事件。这包括错误、警告、进度消息和脚本处理事件。您可以通过在 [edit system scripts snmp traceoptions] 层次结构级别包含以下语句来配置要记录的跟踪作:
[edit system scripts snmp traceoptions] flag all; flag events; flag input; flag offline; flag output; flag rpc; flag xslt;
表 2 描述了 SNMP 脚本跟踪标志的含义。
| 旗 |
描述 |
默认设置 |
|---|---|---|
|
|
跟踪所有作。 |
关闭 |
|
|
跟踪重要事件,包括错误、警告、进度消息和脚本处理事件。 |
上 |
|
|
跟踪 SNMP 脚本输入数据。 |
关闭 |
|
|
生成数据以进行离线开发。 |
关闭 |
|
|
跟踪 SNMP 脚本输出数据。 |
关闭 |
|
|
跟踪 SNMP 脚本 RPC。 |
关闭 |
|
|
跟踪可扩展样式表语言转换 (XSLT) 库。 |
关闭 |