はじめに
本ドキュメントは 各種トラブルシューティングで IOS / IOS-XE Catalyst の事前設定を記載します
exec prompt timestamp
以下の exec prompt timestamp を line console, line vty 配下に設定することで show command に timestamp を付与できます。
また、show コマンドを取得した際の CPU 使用率も出力されます
show コマンドに timestamp が無い場合、show コマンドを実行した正確な時間が不明なため、ログを取得する際は本設定を行います。
configure terminal line console 0 exec prompt timestamp line vty 0 4 exec prompt timestamp end |
上記設定を行うと以下のように 1行目に show コマンド取得時の CPU 使用率、
2行目に show コマンド取得時の timestamp が表示され、その後に show コマンドの
出力が表示されます。
Switch#show version Load for five secs: 0%/0%; one minute: 0%; five minutes: 0% No time source, *23:40:40.643 UTC Tue Apr 16 2019 Cisco IOS XE Software, Version 16.06.03 Cisco IOS Software [Everest], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 16.6.3, RELEASE SOFTWARE (fc8) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2018 by Cisco Systems, Inc. Compiled Wed 28-Feb-18 23:34 by mcpre |
service timestamps
以下の service timestamps の設定により timestamp を msec 表示にします。
timestamp を msec 表示により 時系列が詳細化され、トラブルシューティングに有効です。
service timestamps debug datetime msec localtime service timestamps log datetime msec localtime |
msec 表示で、より正確なイベントの発生時刻が確認できます
*Apr 16 22:05:28.925: %LINK-3-UPDOWN: Interface FortyGigabitEthernet1/1/1, changed state to down *Apr 16 22:05:28.925: %LINK-3-UPDOWN: Interface FortyGigabitEthernet1/1/2, changed state to down *Apr 16 22:05:29.925: %LINEPROTO-5-UPDOWN: Line protocol on Interface TenGigabitEthernet1/1/1, changed state to down *Apr 16 22:05:29.926: %LINEPROTO-5-UPDOWN: Line protocol on Interface TenGigabitEthernet1/1/2, changed state to down
|
logging buffer
以下の設定で logging buffer の buffer size を変更します。
logging buffered <buffer size> |
本設定変更により、show logging に保存される log のサイズを変更します。
buffer がなくなった場合は古いログから順に自動的に削除されてしまうため、十分な buffer がない状態で何らかの問題が発生すると、問題発生後に show logging を取得しても問題発生時のログが既に削除されている場合があります。そういったことを避けるためにこのコマンドにてあらかじめ十分な buffer を確保しておくことが重要です。
<buffer size> には show memory statistics で現在の Processor Memory の Free の値を確認し、値を設定頂ければと思います。
出来るだけ大きな値を設定頂きたいのですが、Free の値の数パーセント程度の値であれば、設定しても問題ないと思います。以下の例では 589238920 が Free の値です。
Switch#show memory statistics Load for five secs: 0%/0%; one minute: 0%; five minutes: 0% No time source, *23:59:18.350 UTC Tue Apr 16 2019
Tracekey : 1#c4bd69720b5085256cadde571ce88aea
Head Total(b) Used(b) Free(b) Lowest(b) Largest(b) Processor 7FA5711D2010 888965512 299726592 589238920 588201792 588241916 lsmpi_io 7FA5708C91A8 6295128 6294304 824 824 412
|
メモリの空きが少なく logging buffered にて show logging のための十分な buffer を確保が難しい場合や、
Catalyst の再起動が発生するような問題の場合には show logging で log を取得出来ないです。
その場合には以下の設定にて syslog server へログを飛ばすようにしてください。
logging host <Hostname or IP address>
|
必要に応じて、以下の設定も行います。
こちらは syslog server へどの level の severity までログを飛ばすかを設定するコマンドになります。
default では logging trap informational が設定されていますので、debug を取得する場合は、logging trap debugging に
設定変更を行います。
debug 取得時に CPU 負荷を抑えるための設定
debug を取得される場合は上記の設定に加え、以下の設定を行って頂き、CPU の負荷を抑えた方が良いです。本設定を行うことで console や terminal に debug を出力しなくなりますので、CPU にかかる負荷を抑えることが可能です。debug の確認は show logging より 確認します。
logging console informational logging monitor informational
logging buffered <buffer size> debugging
|
debug 取得後は必要に応じて以下を設定し、console と terminal へ出力するメッセージの出力 level を default の状態に戻します。
logging console debugging logging monitor debugging
|