自動収集ログ ファイルについて
YAML ファイルの設定によって、自動収集ログ ファイルの内容が決まります。収集ログ ファイルで使用されるメモリの量は設定できません。保存後のファイルが消去される頻度は設定できます。
自動収集ログ ファイルは、次のディレクトリに保存されます。
switch# dir bootflash:eem_snapshots
44205843 Sep 25 11:08:04 2019 1480625546_SECURITYD_2_FEATURE_ENABLE_DISABLE_eem_snapshot.tar.gz
Usage for bootflash://sup-local
6940545024 bytes used
44829761536 bytes free
51770306560 bytes total
ログ ファイルへのアクセス
コマンド キーワード「debug
」を使用してログを検索します。
switch# dir debug:///
...
26 Oct 22 10:46:31 2019 log-dump
24 Oct 22 10:46:31 2019 log-snapshot-auto
26 Oct 22 10:46:31 2019 log-snapshot-user
次の表に、ログの場所と保存されるログの種類を示します。
場所
|
説明
|
log-dump
|
このフォルダには、ログ ロールオーバー時にイベント ログが保存されます。
|
log-snapshot-auto
|
このフォルダには、syslogイベント0、1、2の自動収集ログが含まれます。
|
log-snapshot-user
|
このフォルダには、bloggerd log-snapshot の実行時に収集されたログが保存されます。
|
ログ ロールオーバーで生成されたログ ファイルを表示するには、次の例を参考にしてください。
switch# dir debug:log-dump/
debug:log-dump/20191022104656_evtlog_archive.tar
debug:log-dump/20191022111241_evtlog_archive.tar
debug:log-dump/20191022111841_evtlog_archive.tar
debug:log-dump/20191022112431_evtlog_archive.tar
debug:log-dump/20191022113042_evtlog_archive.tar
debug:log-dump/20191022113603_evtlog_archive.tar
ログ tar ファイルの解析
tar ファイル内のログを解析するには、次の例を参考にしてください。
switch# show system internal event-logs parse debug:log-dump/20191022104656_evtlog_archive.tar
--------LOGS:/tmp/BLOGGERD0.991453012199/tmp/1-191022104658-191022110741-device_test-M27-V1-I1:0-P884.gz--------
2019 Oct 22 11:07:41.597864 E_DEBUG Oct 22 11:07:41 2019(diag_test_start):Data Space Limits(bytes): Soft: -1 Ha rd: -1
2019 Oct 22 11:07:41.597857 E_DEBUG Oct 22 11:07:41 2019(diag_test_start):Stack Space Limits(bytes): Soft: 500000 Hard: 500000
2019 Oct 22 11:07:41.597850 E_DEBUG Oct 22 11:07:41 2019(diag_test_start):AS: 1005952076 -1
2019 Oct 22 11:07:41.597406 E_DEBUG Oct 22 11:07:41 2019(device_test_process_events):Sdwrap msg unknown
2019 Oct 22 11:07:41.597398 E_DEBUG Oct 22 11:07:41 2019(diag_test_start):Going back to select
2019 Oct 22 11:07:41.597395 E_DEBUG Oct 22 11:07:41 2019(nvram_test):TestNvram examine 27 blocks
2019 Oct 22 11:07:41.597371 E_DEBUG Oct 22 11:07:41 2019(diag_test_start):Parent: Thread created test index:4 thread_id:-707265728
2019 Oct 22 11:07:41.597333 E_DEBUG Oct 22 11:07:41 2019(diag_test_start):Node inserted
2019 Oct 22 11:07:41.597328 E_DEBUG Oct 22 11:07:41 2019(diag_test_start):The test index in diag is 4
2019 Oct 22 11:07:41.597322 E_DEBUG Oct 22 11:07:41 2019(diag_test_start):result severity level
2019 Oct 22 11:07:41.597316 E_DEBUG Oct 22 11:07:41 2019(diag_test_start):callhome alert level
次の表に、特定の tar ファイルの解析に使用できる追加のキーワードを示します。
キーワード
|
説明
|
component
|
プロセス名で識別されるコンポーネントに属するログをデコードします。
|
from-datetime
|
yy [mm [dd [HH [MM [SS]]]]] 形式で指定した、特定の日時のログをデコードします。
|
instance
|
デコードする SDWRAP バッファ インスタンスのリスト(カンマ区切り)。
|
module
|
SUP や LC などのモジュールからのログをデコードします(モジュール ID を使用)。
|
to-datetime
|
yy [mm [dd [HH [MM [SS]]]]] 形式で指定した、特定の日時までのログをデコードします。
|
別の場所へログをコピーする
リモート サーバなどの別の場所にログをコピーするには、次の例を参考にしてください。
switch# copy debug:log-dump/20191022104656_evtlog_archive.tar scp://<ip-adress>/nobackup/<user> vrf management use-kstack
Enter username: user@<ip-address>'s password:
20191022104656_evtlog_archive.tar 100% 130KB 130.0KB/s 00:00
Copy complete, now saving to disk (please wait)...
Copy complete.
自動収集ログファイルの消去
生成されるトリガー ベースの自動収集ログには、EventHistory と EventBundle の 2 種類があります。
EventHistory ログの消去ロジック
イベント履歴の場合は、/var/sysmgr/srv_logs/xport フォルダで消去が行われます。250 MB のパーティション RAM が、/var/sysmgr/srv_logs ディレクトリにマウントされます。
/var/sysmgr/srv_logs のメモリ使用率が、割り当てられた 250 MB の 65% 未満の場合、ファイルは消去されません。メモリ使用率が 65% の制限レベルに達すると、新しいログの保存を続行するのに十分なメモリが使用可能になるまで、最も古いファイルから消去されます。
EventBundle ログの消去ロジック
イベント バンドルの場合、消去ロジックは /bootflash/eem_snapshots フォルダでの状態に基づいて実行されます。自動収集されたスナップショットを保存するために、EEM 自動収集スクリプトは、ブートフラッシュ ストレージの 5%
を割り当てます。ブート フラッシュ容量の 5% が使用されると、ログは消去されます。
新しい自動収集ログが利用可能になっているものの、ブート フラッシュに保存するスペースがない場合(すでに 5% の容量に達している)、システムは次のことを確認します。
-
12 時間以上経過した既存の自動収集ファイルがある場合、システムはファイルを削除し、新しいログをコピーします。
-
既存の自動収集ファイルが 12 時間未満の場合、新しく収集されたログは保存されずに廃棄されます。
デフォルトパージ時間である 12 時間は、次のコマンドを使用して変更できます。コマンドで指定する時間は分単位です。
switch(config)# event manager applet test override __syslog_trigger_default
switch(config-applet)# action 1.0 collect test.yaml purge-time 300 $_syslog_msg
event manager command: test は、ポリシー例の名前です。__syslog_trigger_default は、オーバーライドする必要のあるシステム ポリシーの名前です。この名前は、二重アンダースコア(__)で始まる必要があります。
action command: 1.0 は、アクションの実行順番を示している例となっています。collect は、データが YAMU ファイルを使用して収集されることを示しています。test.yaml は、YAML ファイルの名前の例です。$_syslog_msg は、コンポーネントの名前です。

(注)
|
どの時点でも、進行中のトリガーベースの自動収集イベントは 1 つだけです。自動収集がすでに発生しているときに別の新しいログ イベントを保存しようとすると、新しいログ イベントは破棄されます。
|
デフォルトでは、トリガーベースのバンドルは 5 分(300 秒)ごとに 1 つだけ収集されます。このレート制限は、次のコマンドでも設定できます。コマンドで指定する時間は秒単位です。
switch(config)# event manager applet test override __syslog_trigger_default
switch(config-applet)# action 1.0 collect test.yaml rate-limit 600 $_syslog_msg
event manager command: test はポリシーの名前の例です。__syslog_trigger_default は、オーバーライドするシステム ポリシーの名前の例です。この名前は、二重アンダースコア(__)で始まる必要があります。
action command: 1.0 は、アクションの実行順番を示している例となっています。collect は、データが YAMU ファイルを使用して収集されることを示しています。test.yaml は、YAML ファイルの名前の例です。$_syslog_msg は、コンポーネントの名前です。
リリース 10.1(1) 以降では、トリガーの最大数オプションを使用して収集レートを調整することもできます。これは、この数のトリガーだけを保つものです。 max-triggers の値に達すると、syslog が発生しても、これ以上バンドルは収集されなくなります。
event manager applet test_1 override __syslog_trigger_default
action 1.0 collect test.yaml rate-limt 30 max-triggers 5 $_syslog_msg

(注)
|
自動収集されたバンドルを debug:log-snapshot-auto/ により手動で削除すれば、次のイベントが発生したとき、 max-triggers の設定数に基づいて収集が再開されます。
|
自動収集の統計情報と履歴
トリガーベースの収集統計情報の例を次に示します。
switch# show system internal event-logs auto-collect statistics
---------------------EEM Auto Collection Statistics--------------------
Syslog Parse Successful :88 Syslog Parse Failure :0
Syslog Ratelimited :0 Rate Limit Check Failed :0
Syslog Dropped(Last Action In Prog) :53 Storage Limit Reached :0
User Yaml Action File Unavailable :0 User Yaml Parse Successful :35
User Yaml Parse Error :0 Sys Yaml Action File Unavailable :11
Sys Yaml Parse Successful :3 Sys Yaml Parse Error :0
Yaml Action Not Defined :0 Syslog Processing Initiated :24
Log Collection Failed :0 Tar Creation Error :0
Signal Interrupt :0 Script Exception :0
Syslog Processed Successfully :24 Logfiles Purged :0
次の例は、CLI コマンドを使用して取得されたトリガーベースの収集履歴(処理された syslog 数、処理時間、収集されたデータのサイズ)を示しています。
switch# show system internal event-logs auto-collect history
DateTime Snapshot ID Syslog Status/Secs/Logsize(Bytes)
2019-Dec-04 05:30:32 1310232084 VPC-0-TEST_SYSLOG PROCESSED:9:22312929
2019-Dec-04 05:30:22 1310232084 VPC-0-TEST_SYSLOG PROCESSING
2019-Dec-04 04:30:13 1618762270 ACLMGR-0-TEST_SYSLOG PROCESSED:173:33194665
2019-Dec-04 04:28:47 897805674 SYSLOG-1-SYSTEM_MSG DROPPED-LASTACTIONINPROG
2019-Dec-04 04:28:47 947981421 SYSLOG-1-SYSTEM_MSG DROPPED-LASTACTIONINPROG
2019-Dec-04 04:27:19 1618762270 ACLMGR-0-TEST_SYSLOG PROCESSING
2019-Dec-04 02:17:16 1957148102 CARDCLIENT-2-FPGA_BOOT_GOLDEN NOYAMLFILEFOUND