Junos OS を実行するデバイスでのトレース コミット スクリプト処理
コミット スクリプトのトレース操作は、コミット スクリプトの操作を追跡し、ログ ファイルに記録します。ログに記録されたエラーの説明には、問題の迅速な解決に役立つ詳細情報が記載されています。
Junos OS では、コミット スクリプト トレースのデフォルト動作は、エラー、警告、進行状況メッセージ、スクリプト処理イベントなどの重要なイベントをデバイスの /var/log/cscript.log ファイルに記録することです。ファイルの cscript.log が 128 キロバイト (KB) に達すると、ファイルの末尾に 0 から 9 までの数字 (昇順) を追加して名前が変更され、圧縮されます。たとえば、ログ ファイルは cscript.log.0.gz として保存され、トレース ファイルが 10 個になるまで cscript.log.1.gz されます。次に、最も古いトレース ファイル(cscript.log.9.gz)が上書きされます。
Junos OS Evolved は、デフォルトですべてのアプリケーションのトレース・データをキャプチャーし、 cscript アプリケーションに対応するトレース・ファイル内のすべてのスクリプト・タイプのデータを収集します。トレース・データを表示するには、 show trace application cscript コマンドを発行します。詳細については、 Junos OS Evolvedを搭載したデバイスでのトレーススクリプト処理を参照してください。
コミット スクリプト操作のトレースの最小設定
コミット スクリプトのトレース オプションが設定されていない場合、コミット スクリプトのトレース出力を表示する最も簡単な方法は、 output トレース フラグを設定して show log cscript.log | last コマンドを発行することです。これを行うには、次の手順を実行します。
コミット スクリプトをまだ行っていない場合は、
[edit system scripts commit]階層レベルでfileステートメントを含めて有効にします。[edit system scripts commit] user@host# set file filename
[edit system scripts commit]階層レベルでtraceoptions flag outputステートメントを含め、トレース オプションを有効にします。[edit system scripts commit] user@host# set traceoptions flag output
設定をコミットします。
[edit] user@host# commit
ファイル /var/log/cscript.log に記録された結果のトレース メッセージを表示します。ログの最後には、ステップ 1 で有効にしたコミットスクリプトによって生成された出力があります。ログの末尾を表示するには、
show log cscript.log | last運用モード コマンドを発行します。[edit] user@host# run show log cscript.log | last
表 1 は、 cscript.log ファイルの選択された部分を表示する便利なフィルタリング コマンドをまとめたものです。
| タスク |
命令 |
|---|---|
| すべてのコミット スクリプト処理に関連するロギング データを表示します。 |
|
| 最新のコミット操作のみのスクリプト処理を表示します。 |
|
| スクリプトエラーの処理を表示します。 |
|
| 特定のスクリプトのスクリプト処理を表示します。 |
|
例:コミット スクリプトの traceoptions を有効にするための最小設定
コミット スクリプト ファイル source-route.xsl のトレース出力を表示します。
[edit]
system {
scripts {
commit {
file source-route.xsl;
traceoptions {
flag output;
}
}
}
}
[edit] user@host# commit and-quit user@host> show log cscript.log | last Jun 20 10:21:24 summary: changes 0, transients 0 (allowed), syslog 0 Jun 20 10:24:15 commit script processing begins Jun 20 10:24:15 reading commit script configuration Jun 20 10:24:15 testing commit script configuration Jun 20 10:24:15 opening commit script '/var/db/scripts/commit/source-route.xsl' Jun 20 10:24:15 script file '/var/db/scripts/commit/source-route.xsl': size=699; md5 = d947972b429d17ce97fe987d94add6fd Jun 20 10:24:15 reading commit script 'source-route.xsl' Jun 20 10:24:15 running commit script 'source-route.xsl' Jun 20 10:24:15 processing commit script 'source-route.xsl' Jun 20 10:24:15 results of 'source-route.xsl' Jun 20 10:24:15 begin dump <commit-script-output xmlns:junos="http://xml.juniper.net/junos/*/junos" xmlns:xnm="http://xml.juniper.net/xnm/1.1/xnm" xmlns:jcs="http://xml.juniper.net/junos/commit-scripts/1.0"> <xnm:warning> <edit-path>[edit chassis]</edit-path> <message>IP source-route processing is not enabled.</message> </xnm:warning> </commit-script-output>Jun 20 10:24:15 end dump Jun 20 10:24:15 no errors from source-route.xsl Jun 20 10:24:15 saving commit script changes Jun 20 10:24:15 summary: changes 0, transients 0 (allowed), syslog 0
コミット スクリプトのトレースを設定する
トレース ファイルが書き込まれるディレクトリ(/var/log)は変更できません。ただし、 [edit system scripts commit traceoptions] 階層レベルで次のステートメントを含めることで、他のトレース ファイル設定をカスタマイズできます。
[edit system scripts commit 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;
これらのステートメントは、次のセクションで説明されています。
- コミット スクリプト ログ ファイル名を設定する
- コミット スクリプトのログ ファイルの数とサイズを設定する
- コミット スクリプト ログ ファイルへのアクセスを設定する
- コミット スクリプトのトレース操作を設定する
コミット スクリプト ログ ファイル名を設定する
デフォルトでは、コミット スクリプトのトレース出力を記録するファイルの名前は cscript.log です。[edit system scripts commit traceoptions]階層レベルで file ステートメントを含めることで、別の名前を指定することができます。
[edit system scripts commit traceoptions] file filename;
コミット スクリプトのログ ファイルの数とサイズを設定する
既定では、トレース ファイルのサイズが 128 KB に達すると、トレース ファイルの名前が変更され、 filename.0.gz、 filename.1.gz というように圧縮され、トレース ファイルが 10 個になるまで圧縮されます。そして、最も古いトレースファイル(filename.9.gz)が上書きされます。
トレース ファイルの数とサイズに制限を設定するには、 [edit system scripts commit traceoptions file filename] 階層レベルで次のステートメントを含めます。
[edit system scripts commit traceoptions file filename] files number size size;
たとえば、最大ファイル サイズを 640 KB に、最大ファイル数を 20 に設定します。トレース操作 (filename) の出力を受信するファイルが 640 KB に達すると、名前が変更されて filename.0.gz に圧縮され、 filename という新しいファイルが作成されます。 filename が 640 KB に達すると、 filename.0.gz の名前が filename.1.gz に変更され、 filename の名前が変更されて filename.0.gz に圧縮されます。このプロセスは、トレース ファイルが 20 個になるまで繰り返されます。次に、最も古いファイル(filename.19.gz)が上書きされます。
ファイル数は 2 から 1000 ファイルの範囲です。ファイルサイズの範囲は10KBから1ギガバイト(GB)です。
最大ファイル サイズまたは最大トレース ファイル数を設定する場合は、もう一方のパラメータとファイル名も指定する必要があります。
コミット スクリプト ログ ファイルへのアクセスを設定する
デフォルトでは、コミット スクリプト ログ ファイルへのアクセスは所有者に制限されています。[edit system scripts commit traceoptions file filename]階層レベルで world-readable または no-world-readable ステートメントを含めることで、アクセスを手動で設定できます。
[edit system scripts commit traceoptions file filename] (world-readable | no-world-readable);
no-world-readable ステートメントは、コミット スクリプトのログへのアクセスを所有者に制限します。world-readable ステートメントを使用すると、コミット スクリプトのログ ファイルへの無制限のアクセスが可能になります。
コミット スクリプトのトレース操作を設定する
デフォルトでは、構成設定に関係なく、traceoptions events フラグがオンになり、重要なイベントのみがログに記録されます。これには、エラー、警告、進行状況メッセージ、およびスクリプト処理イベントが含まれます。トレース操作をログに記録するように設定するには、 [edit system scripts commit traceoptions] 階層レベルに以下のステートメントを記述します。
[edit system scripts commit traceoptions] flag all; flag events; flag input; flag offline; flag output; flag rpc; flag xslt;
表 2 は、コミット スクリプトのトレース フラグの意味を示しています。
| 旗 |
形容 |
デフォルト設定 |
|---|---|---|
|
|
すべてのコミット スクリプト操作をトレースします。 |
オフ |
|
|
エラー、警告、進行状況メッセージ、スクリプト処理イベントなどの重要なコミット スクリプト イベントをトレースします。 |
オン |
|
|
コミット・スクリプトの入力データをトレースします。 |
オフ |
|
|
オフライン開発用のデータを生成します。 |
オフ |
|
|
トレース コミット スクリプトの出力データ。 |
オフ |
|
|
コミット スクリプトの RPC をトレースします。 |
オフ |
|
|
Extensible Stylesheet Language Transformations (XSLT) ライブラリをトレースします。 |
オフ |