Skip to content

Log Monitoring

項目内容
Syslogイベントを集中管理へ転送
ログレベル重大度に応じて出力制御
時刻同期NTP必須(相関分析の前提)
設定目的コンフィグモードコマンド例
Syslog送信先Global configlogging host <ip-address>
ログレベルGlobal configlogging trap warnings
確認コマンド見るポイント
show loggingエラー時系列

Syslog重大度レベル

Syslogは重大度によってメッセージを分類する。数値が小さいほど重大度が高い。

レベルキーワード意味
0emergencies緊急
1alerts警報
2critical重大
3errorsエラー
4warnings警告
5notifications通知
6informational情報
7debuggingデバッグ

重要: logging trap <レベル> を設定すると、指定レベル以上(数値が小さい方)のメッセージが出力される。例: logging trap warnings → レベル0〜4が出力対象。

コマンド実行履歴の保存(Archive)

アーカイブ機能を使用すると、コマンド実行履歴をローカルに保存できる。また、Syslogサーバへ送信することも可能。問題発生時の原因分析や切り戻しに役立つ。

設定コマンド説明
(config)# archiveアーカイブコンフィグレーションモードへ移行
(config-archive)# log configログアーカイブコンフィグレーションモードへ移行
(config-archive-log-cfg)# logging enableコマンド実行履歴の保存を有効化
(config-archive-log-cfg)# notify syslogコマンド実行履歴のSyslogサーバ送信を有効化
確認コマンド見るポイント
show archive log config allコマンド実行履歴の表示

Syslogフィルタリング(discriminator)

discriminatorを作成してSyslogメッセージをフィルタリングできる。不必要なメッセージを出力しないようにしたり、特定のメッセージのみ取得したい場合に使用。

Syslogメッセージの書式

%(facility)-(severity)-(mnemonic): (msg-body)

例: %LINK-3-UPDOWN: Interface GigabitEthernet0/3, changed state to up

フィールド説明
facilityLINK など、メッセージの源
severity重大度レベル(0-7)
mnemonicUPDOWN など、メッセージの種類を示す識別子
msg-body詳細なメッセージ本文

discriminatorの作成

設定コマンド:

(config)# logging discriminator [discriminator名] {facility | severity | mnemonics | msg-body} {drops | includes} [フィルタリング条件]
パラメータ説明
facilitySyslogメッセージのfacilityをフィルタリング対象にする
severitySyslogメッセージの重大度レベルをフィルタリング対象にする
mnemonicsSyslogメッセージのmnemonicをフィルタリング対象にする
msg-bodySyslogメッセージのメッセージ部分をフィルタリング対象にする
drops条件に一致したメッセージを無視する
includes条件に一致したメッセージを取り込む

複数条件の指定: 複数のフィルタリング条件を1行で記述可能

例:

logging discriminator DISC facility includes LINK severity includes 3

discriminatorの適用

設定コマンド:

(config)# logging console discriminator [discriminator名]

作成したdiscriminatorを出力先に適用する。

試験ポイント

重要: discriminatorの設定で誤りやすい箇所

誤り正しい理解
facility includes LINEPROTOLINEPROTOはfacilityではなくmnemonic。また、includesは「メッセージを出力」するため、除外ではなく取り込み
severity drops 3severityの値を確認する必要がある。問題のメッセージが「5」なら「drops 5」と指定
mnemonic drops LINEPROTO で本来 mnemonicsmnemonicフィールドを指定する場合は mnemonics で複数形
logging console discriminator LINEPROTOこれは設定ではなく「適用コマンド」である。discriminatorの名前とfacility/mnemonicを混同しない

タイムスタンプと時刻同期

Syslogメッセージのタイムスタンプ先頭記号でNTP同期状態がわかる。

先頭記号意味
*システムクロックの同期が行われていない(日付と時刻が正確ではない)
.同期を行ったことはあるが、現在は同期できていない
なし同期が行われている(日付と時刻が信頼できる状態)

例: *May 14 16:17:20: %LINK-5-CHANGED: ... → 先頭に * があるのでNTP未同期

重要: * = 未同期、. = 同期喪失中、記号なし = 正常同期。試験では先頭記号の意味を問われる。 重要: システムクロック(再起動時に削除される時計)はNTPまたは手動で設定する。正確なタイムスタンプのためにNTP同期が推奨される。