システムログの概要
SUMMARY このセクションでは、メッセージを生成するJunos OSプロセスを特定するシステムログメッセージを説明し、発生した操作またはエラーについて簡単に説明します。
システムログの概要
Junos OSはシステムログメッセージ(syslogメッセージ友呼ばれる)をデバイス上で発生する記録イベントに作成し、それには次が含まれます。
-
Open Shortest Path First(OSPF)プロトコル隣接の作成や、設定データベースへのユーザーログインの作成といったルーティン操作
-
設定ファイルへのアクセスの失敗、または予期しないピアプロセスへの接続の終了といった失敗やエラー状態
-
超高熱によるデバイスの電源ダウンなどの緊急または深刻な状態。
各システムログメッセージは、メッセージを生成する必要があるJunos OSプロセスを特定し、発生した操作またはエラーの簡単な説明をします。特定のシステムログメッセージの詳細については、システムログエクスプローラを参照してください。
デバイスがシステムメッセージをログに記録するように設定するには、[システムを編集]階層レベルでsyslogステートメントを設定します。
Junos OS Release 17.3R1では、syslogイベントデーモンは、IPv4アドレスリモートホストの専用管理ルーティングインスタンスでfxp0に対処します。Junos OS リリース 18.1R1では、リモートホストまたはアーカイブサイトに接続し、fxp0が専用管理インスタンスに移動されるとき、syslogイベントデーモンはIPv6ベースの設定をサポートします。Junos OSリリース18.4R1では、syslogクライアントが、適切な階層で定義するルーティングインスタンスを介してメッセージを送信できます。ルーティングインスタンス(Syslog)を参照してください。
このトピックでは、Junos OSプロセスおよびライブラリのシステムログメッセージについて説明しますが、Adaptive Services PICなどのPhysical Interface Card(PIC)のシステムログサービスについては説明しません。
Junos OS Evolvedでは、各ノードには、システムジャーナルを取得しフィルターするインターフェイスである標準的なjournalctl
ツールが備わっています。システムログメッセージは、システムジャーナルから抽出されます。relay-eventd
プロセスはすべてのノードで実行し、システムジャーナルから(syslog設定に基づいて)イベント、および異なるアプリケーションからエラーメッセージを取得して、それらをmaster-eventd
プロセスに転送します。master-eventd
プロセスは、プライマリルーティングエンジンで実行し、ログメッセージとエラーをディスクに書き込みます。
システムログエクスプローラアプリケーションを使用して、異なるリリースでシステムログメッセージを表示または比較します。
Junos OS Evolvedでは、バックアップルーティングエンジンにmessages
ファイルはありません。すべてのバックアップルーティングエンジンのログは、プライマリルーティングエンジンノード上のmessages
ファイルにあります。
デフォルトでは、Junos OS Evolvedは、ノード名はシステムログメッセージのホスト名の後に追加されますが、Junos OSではそうではありません。このアクションにより、Junos OS EvolvedシステムログメッセージのRFC5424への準拠が保たれます。しかしながら、監視システムによってはJunos OS Evolvedホスト名が正しく識別されない場合もあります。ホスト名とノード名の組み合わせがインベントリ内のホスト名と一致しないからです。
Junos OS Evolvedリリース20.4R2以降、監視システムでJunos OS Evolvedホスト名を正確に識別するには、set system syslog alternate-format
設定モードコマンドを使用します。このコマンドにより、Junos OS Evolvedシステムログメッセージのフォーマットが変更されます。ノード名が、ホスト名の後に追加されるのではなく、メッセージ内のプロセス名の前に追加されるようになり、監視システムがホスト名を正しく識別できるようになります。
例えばJunos OSシステムログメッセージは、FPCから送信されるシステムログメッセージには元のプロセスを印刷しません。
user@mxhost> show log messages Dec 19 13:22:41.959 mxhost chassisd[5290]: CHASSISD_IFDEV_DETACH_FPC: ifdev_detach_fpc(0) Dec 19 13:23:22.900 mxhost fpc2 Ukern event counter Sock_tx init delayed
しかしながら、Junos OS Evolvedのメッセージでは、ホスト名の後にノード名が追加され、FPCを含めたノードから送信されるメッセージの元のプロセスが印刷されます。
user@ptxhost-re0> show log messages May 25 18:41:05.375 ptxhost-re0 mgd[16201]: UI_CHILD_STATUS: Cleanup child '/usr/sbin/dot1xd', PID 21322, status 0 May 25 18:42:34.632 ptxhost-fpc0 evo-cda-bt[14299]: Register bt.igp_misc.debug.hdr_length_cnt not found May 25 18:42:34.753 ptxhost-fpc1 evo-cda-bt[14427]: HBM: hbm_gf_register_inst May 25 18:47:14.498 ptxhost-re0 ehmd[5598]: SYSTEM_APP_READY: App is ready re0-ehmd
Junos OS Evolvedシステムログメッセージの入れ替えフォーマットを設定している場合は、同じシステムログメッセージのセットが以下のようになり、ホスト名だけとなります。
user@ptxhost-re0> show log messages May 25 18:41:05.375 ptxhost re0- mgd[16201]: UI_CHILD_STATUS: Cleanup child '/usr/sbin/dot1xd', PID 21322, status 0 May 25 18:42:34.632 ptxhost fpc0- evo-cda-bt[14299]: Register bt.igp_misc.debug.hdr_length_cnt not found May 25 18:42:34.753 ptxhost fpc1- evo-cda-bt[14427]: HBM: hbm_gf_register_inst May 25 18:47:14.498 ptxhost re0- ehmd[5598]: SYSTEM_APP_READY: App is ready re0-ehmd
SRXシリーズとNFXシリーズデバイスでのJunos OS リリース 22.1R1と、QFX5130、QFX5200、QFX5220、QFX5700デバイスでのJunos OS Evolvedリリース22.2R1以降、<event>UI_LOGIN_EVENT|UI_LOGOUT_EVENT</event>
フォーマットを使用してイベントタグ内に複数のイベントを追加しました。これにはイベントを分離し、システムログメッセージを生成するオプション(|
)があります。これらのリリースの前には、イベントタグが<event>UI_LOGIN_EVENT UI_LOGOUT_EVENT</event>
フォーマットを使用し、<get-syslog-events> rpc
フィルターのさまざまな組み合わせでは、ログに記録されませんでした。
Junos OSのシステムロギング機能とメッセージの重大度レベル
表 1 は、[edit system syslog]
階層レベルの設定ステートメントで指定できる、Junos OSシステムのロギング機能の一覧を示しています。
ファシリティ(番号) |
イベントまたはエラーの種類 |
---|---|
|
Junos OSカーネルはアクションを実行し、エラーに遭遇します。 |
|
ユーザー スペースがアクションを実行するか、エラーに遭遇します。 |
|
システムがアクションを実行するか、エラーに遭遇します。 |
|
認証と承認の試み。 |
|
FTPがアクションを実行するか、エラーに遭遇します。 |
|
ネットワークタイムプロトコルはアクションを実行するか、エラーに遭遇します。 |
|
セキュリティ関連のイベントやエラー。 |
|
動的フロー キャプチャに関連するイベント |
|
ローカル外部アプリケーションはアクションを実行するか、エラーに遭遇します。 |
|
ファイアウォールフィルターは、パケットフィルタリングアクションを実行します。 |
|
パケット転送エンジンはアクションを実行するか、エラーに遭遇します。 |
|
指定された設定がそのルーター タイプでは無効 |
|
Junos OS 設定へ変更 |
|
Junos XMLプロトコルまたはNETCONF XMLクライアントなどのクライアントアプリケーションは、Junos OSコマンドラインインターフェイス(CLI)プロンプトでコマンドを発行します。 |
表 2に、[edit system syslog]
階層レベルの設定ステートメントで指定可能な重大度を示します。レベルemergency
からinfo
は、最も高い重大度(機能に最大の影響を及ぼす)から最も低いものへの順です。
他の重大度レベルとは異なり、none
レベルでは、トリガーとなるイベントがルーティング機能に及ぼす重大度を示すのではなく、ファシリティのログ記録を無効にします。詳細は、ファシリティのシステム ログ記録の無効化を参照してください。
値 |
重大度レベル |
説明 |
---|---|---|
- |
|
宛先への関連ファシリティのログ記録を無効にする |
0 |
|
ルーターの機能を停止させてしまう、システム パニックなどの状態 |
1 |
|
システム データベースの破損などの、直ちに修正が必要な状態 |
2 |
|
ハード エラーなどのクリティカルな状態 |
3 |
|
通常、緊急、アラート、クリティカルなレベルのエラーほど深刻な結果をもたらさないエラー状態 |
4 |
|
監視が必要な状態 |
5 |
|
エラーではないが、特別な対応が必要と思われる状態 |
6 |
|
関心を持つべきイベントまたはエラーなしの状態 |
7 |
|
すべての重大度レベルを含む |
Junos OSデフォルトシステムログ設定
表 3は、Junos OSを実行するすべてのルーターに適用されるデフォルトシステムログ設定をまとめ、デフォルト値を上書きする設定に含めるステートメントを指定します。
設定 |
デフォルト |
上書きステートメント |
手順 |
---|---|---|---|
リモートマシンに転送されたメッセージのための代替ファシリティ |
|
[edit system syslog] host hostname { facility-override facility; } |
|
ファイルに記録されたメッセージのフォーマット |
UNIXフォーマットに基づく標準Junos OSフォーマット |
[edit system syslog] file filename { structured-data; } |
|
アーカイブセット内の最大ファイル数 |
10 |
[edit system syslog] archive { files number; } file filename { archive { files number; } } |
|
ログファイルの最大サイズ |
Mシリーズ、MX シリーズ、Tシリーズ:1メガバイト(MB) TX マトリクス:10 MB |
[edit system syslog] archive { size size; } file filename { archive { size size; } } |
|
タイムスタンプフォーマット |
月、日、時間、分、秒 たとえば、以下のように表示されます。 |
[edit system syslog] time-format format; |
|
ログファイルを読み込めるユーザー |
|
[edit system syslog] archive { world-readable; } file filename { archive { world-readable; } } |
Junos OS プラットフォーム固有のデフォルト システム ログ メッセージ
以下のメッセージは、特定のルーター上でデフォルトで生成されます。これらのタイプのメッセージを表示するには、Junos OS 最小システムログ構成で説明されているように、メッセージの宛先を少なくとも 1 つ構成する必要があります。
M シリーズ、MX シリーズ、または T シリーズのルーターでカーネル プロセス メッセージをログに記録するには、 ステート
kernel info
メントを適切な階層レベルで記述します。[edit system syslog] (console | file filename | host destination | user username) { kernel info; }
info
TX Matrix ルーターと T640 ルーターで構成されるルーティング マトリクスでは、各 T640 ルータのプライマリ ルーティング エンジンが、重大度が 以上のすべてのメッセージを TX Matrix ルータのプライマリ ルーティング エンジンに転送します。これは、TX Matrix ルーターに含まれる以下の構成ステートメントと等価です。[edit system syslog] host scc-master { any info; }
Junos OS リリース 15.1X49-D10 および Junos OS リリース 17.3R1 より(同様に TX Matrix Plus ルーターと接続された T1600 または T4000 ルーターで構成されるルーティング マトリクス上でも)、各 T1600 または T4000 LCC のプライマリ ルーティング エンジンは、重大度が
info
以上のすべてのメッセージを TX Matrix Plus ルーターのプライマリ ルーティング エンジンに転送します。これは、TX Matrix Plus ルーターに含まれる以下の構成ステートメントと等価です。注:ユーザー インターフェイスの観点から見ると、ルーティング マトリクスは単一ルーターとして表示されます。TX Matrix Plus ルーターは、ルーティング マトリクスで接続されているすべての T1600 または T4000 ルーターを制御します。
[edit system syslog] host sfc0-master { any info; }
標準フォーマットで生成されるメッセージを解釈する
Junos OSのプロセスまたはサブルーチンライブラリで生成された標準形式のメッセージの構文は、以下の優先順位情報が含まれているかどうかによって異なります。
explicit-priority
ステートメントが[filename]または[hostname]階層レベルに含まれる場合、システムログメッセージは以下の構文を持っています。timestamp message-source: %facility–severity–TAG: message-text
コンソールやユーザーに送信される場合、またはファイルやリモートホストにステート
explicit-priority
メントが含まれていない場合、システムログメッセージの構文は次のとおりです:timestamp message-source: TAG: message-text
表 4はメッセージフィールドを説明しています。
フィールド | 説明 |
---|---|
timestamp |
メッセージが記録された時間。 |
message-source |
メッセージを生成したプロセスまたはコンポーネント、およびメッセージが記録されたルーティングプラットフォームの識別子。Junos OSの場合、このフィールドには2つ以上のサブフィールドが含まれます。ホスト名、プロセスおよびプロセスID(PID)。Junos OS Evolvedの場合、このフィールドにはホスト名、その後にノード名、プロセス名、PIDが含まれます。 hostname process[process-ID] |
facility |
システムログメッセージが属しているファシリティを指定するコード。コードのファシリティ名へのマッピングについては、表を参照してください。システムログメッセージの優先順位情報を含む、優先順位情報で報告されたファシリティコード。 |
severity |
システムログメッセージに割り当てられた重大度レベルを表す数値コード。コードの重要度名へのマッピングについては、表を参照してください。システムログメッセージの優先順位情報を含む、優先順位情報で報告された重大度レベルの数値コード。 |
TAG |
メッセージを一意に識別するテキスト文字は、すべて大文字で、アンダースコア(_)を使用して単語を区切ります。タグ名は、生成するソフトウェアのプロセスまたはライブラリを示すプレフィックスで始まります。このリファレンスのエントリーは、このプレフィックスのアルファベット順に表示されています。 ルーティングプラットフォーム上のすべてのプロセスがタグを使用するわけではないため、このフィールドは常に表示されるわけではありません。 |
message-text |
メッセージのテキスト。 |
ホストOSシステムログとコアファイルを管理する
ホストOSを搭載したJunos OSスイッチでは、Junos OSは、システムログメッセージ(syslogメッセージとも呼ばれます)を生成し、以下を含むスイッチで発生するイベントを記録することがあります。
ユーザーが設定データベースへログインするなどの日常的な運用。
障害およびエラー状態。
過度な温度によりスイッチの電源が落ちるなど、緊急時またはクリティカルな状態。
OCXシリーズスイッチの場合:
システムログメッセージが、以下のシナリオのホストOSの/var/log/dcpfe.logファイルに記録されています。
転送デーモンを初期化したとき。
メッセージは緊急としてタグ付けされます(LOG_EMERG))。メッセージのコピーはスイッチの/var/logディレクトリにも送信されます。
プロセスからのメッセージは、/var/logディレクトリのホストシステムで利用できます。ホストシャーシ管理プロセスからのシステムログメッセージは、ディレクト/var/logリのlcmd.logファイルに記録されます。
ホストOSを搭載したQFXスイッチの場合:
Junos OSおよびホストOSは、システムとプロセスイベントに関するログメッセージを記録し、特定のシステム障害が発生するとコアファイルを生成します。
これらのファイルは、スイッチで実行されているホストOSの種類に応じて、ログメッセージの場合は/var/log、またコアファイルの場合は/var/crashなどのディレクトリに保存されます。
診断を行うため、スイッチ上のJunos OS CLIから、これらのホストOSシステムのログおよびコアファイルにアクセスできます。ホストOSが一時ログやその他のファイルを保存するディレクトリをクリーンアップすることもできます。
このトピックには、以下のセクションが含まれています。
- ホストOSシステムでログファイルを表示する
- ホストシステムからスイッチにログファイルをコピーする
- ホストOSシステムでコアファイルを表示する
- ホストシステムからスイッチにコアファイルをコピーする
- ホストOSで一時ファイルをクリーンアップする
ホストOSシステムでログファイルを表示する
ホストOSで作成されたログファイルのリストを表示するには、以下のコマンドを入力します。
user@switch> show app-engine logs
ホストシステムからスイッチにログファイルをコピーする
ホストOSからスイッチにログファイルをコピーするには、以下のコマンドを入力します。
user@switch> request app-engine file-copy log from-jhost source to-vjunos destination
例えば、lcmdログファイルをスイッチにコピーするには、以下のコマンドを入力します。
user@switch> request app-engine file-copy log from-jhost lcmd.log to-vjunos /var/tmp
ホストOSシステムでコアファイルを表示する
ホストOSシステムで生成され、保存されたコアファイルのリストを表示するには、以下のコマンドを入力します。
user@switch> show app-engine crash
このリストは以下のサンプルの出力のようになります。
Compute cluster: default-cluster Compute node: default-node Crash Info ========== total 13480 -rw-r--r-- 1 root root 178046 Feb 14 23:08 localhost.lcmd.26653.1455520135.core.tgz -rw-r--r-- 1 root root 4330343 Feb 15 00:45 localhost.dcpfe.7155.1455525926.core.tgz -rw-r--r-- 1 root root 4285901 Feb 15 01:49 localhost.dcpfe.25876.1455529782.core.tgz -rw-r--r-- 1 root root 4288508 Feb 15 02:39 localhost.dcpfe.713.1455532774.core.tgz -rw-r--r-- 1 root root 264079 Feb 15 17:02 localhost.lcmd.1144.1455584540.core.tgz
ホストシステムからスイッチにコアファイルをコピーする
ホストOSからスイッチにコアファイルをコピーするには、以下のコマンドを入力します。
user@switch> request app-engine file-copy crash from-jhost source to-vjunos destination-dir-or-file-path
コピー先のJunos OSパスがディレクトリである場合、デフォルトで送信元のファイル名が使用されます。コピー先でファイルの名前を変更するには、使用するファイル名を含め、フルパスとしてコピー先の引数を入力します。
例えば、localhost.lcmd.26653.1455520135.core.tgzコアアーカイブファイルをスイッチにコピーするには、以下のコマンドを入力します。
user@switch> request app-engine file-copy crash from-jhost localhost.lcmd.26653.1455520135.core.tgz to-vjunos /var/tmp
スイッチの結果を確認するには、以下のコマンドを入力します。
user@switch> show system core-dumps re0: -------------------------------------------------------------------------- -rw-r--r-- 1 root field 178046 Feb 15 17:15 /var/tmp/localhost.lcmd.26653.1455520135.core.tgz total files: 1
ホストOSで一時ファイルをクリーンアップする
ホストOSで作成された一時ファイルを削除するには、以下のコマンドを入力します。
user@switch> request app-engine cleanup
例えば、LinuxホストOSを搭載したスイッチの以下のサンプル出力は、/var/tmpに保存された一時ファイルのクリーンアップを示しています。
Compute cluster: default-cluster Compute node: default-node Cleanup (/var/tmp) =======
info
以上のすべてのメッセージを TX Matrix Plus ルーターのプライマリ ルーティング エンジンに転送します。