Junos OS を実行しているデバイスでの SNMP スクリプト処理をトレースします。
SNMP スクリプト トレース操作は、SNMP スクリプトの操作を追跡し、ログ ファイルに記録します。ログに記録されたエラーの説明には、問題をより迅速に解決するために役立つ詳細情報が記載されています。
SNMP スクリプト トレーシングのデフォルトの操作は、デバイスの /var/log/snmp.log ファイルにエラー、警告、進行状況メッセージ、スクリプト処理イベントを含む重要なイベントをログに記録することです。 snmp.log ファイルが 128 KB(キロバイト)に達すると、ファイルの末尾に 0~9 の数字(昇順)で名前が変更され、圧縮されます。結果として得られるファイルは 、10 個のトレース ファイルが存在するまで snmp.log.0.gz、次に snmp.log.1.gz です。そして、最も古いトレース ファイル(snmp.log.9.gz)が上書きされます。
SNMP スクリプトの Traceoptions を有効にする最小構成
SNMP スクリプトのトレース オプションが設定されていない場合、SNMP スクリプトのトレース出力を表示する最も簡単な方法は、trace フラグを output
設定し、 コマンドを show log snmp.log | last
発行することです。これを行うには、次の手順を実行します。
まだ行っていない場合は、 階層レベルで ステートメントを含
file
めてSNMPスクリプトを[edit system scripts snmp]
有効にします。[edit system scripts snmp] user@host# set file filename oid oid
階層レベルで ステートメントを含めることで、
traceoptions flag output
トレース オプションを[edit system scripts snmp]
有効にします。[edit system scripts snmp] user@host# set traceoptions flag output
設定をコミットします。
[edit] user@host# commit
/var/log/snmp.log ファイルの最後に記録された結果のトレース メッセージを表示するには、 運用モード コマンドを
show log snmp.log | last
発行します。[edit] user@host# run show log snmp.log | last
表 1 は、ファイルの選択された部分を表示する有用なフィルタリング・コマンドを snmp.log
要約したものです。
タスク |
コマンド |
---|---|
すべての SNMP スクリプト処理に関連するロギング データを表示します。 |
|
最新の操作のみの処理を表示します。 |
|
スクリプト・エラーの処理を表示します。 |
|
特定のスクリプトの処理を表示します。 |
|
例:SNMP スクリプトの Traceoptions を有効にする最小構成
デフォルトの 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.log です。階層レベルで ステートメントを含めることで、別の file
名前を [edit system scripts snmp traceoptions]
指定できます。
[edit system scripts snmp traceoptions] file filename;
SNMP スクリプト ログ ファイルの数とサイズの設定
デフォルトでは、トレース ファイルのサイズが 128 KB に達すると、トレース ファイルが 10 個になるまで、トレース ファイルの名前が .0.gz、次filenameに .1.gz に圧縮されますfilename。そして、最も古いトレース ファイル(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 に達すると、そのファイルの名前が変更され、圧縮が .0.gz にfilename圧縮され、 というfilename新しいファイルが作成されます。640 KB に達するとfilename、filename.0.gz は .1.gz に変更filenameされfilename、名前は .0.gz に変更され、圧縮は .0.gz にfilename変更されます。このプロセスは、20 個のトレース ファイルが存在するまで繰り返されます。そして、最も古いファイル(filename.19.gz)が上書きされます。
ファイルの数は、2~1000ファイルの範囲です。ファイル サイズは、10 KB から 1 GB(ギガバイト)までの範囲です。
最大ファイル サイズまたはトレース ファイルの最大数のいずれかを設定する場合は、他のパラメーターとファイル名も指定する必要があります。
SNMP スクリプト ログ ファイルへのアクセスの設定
デフォルトでは、SNMP スクリプト ログ ファイルへのアクセスは所有者に制限されています。階層レベルで または no-world-readable
ステートメントを含めることで、アクセスをworld-readable
[edit system scripts snmp traceoptions file filename]
手動で設定できます。
[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(Extensible Stylesheet Language Transformations)ライブラリをトレースします。 |
オフ |