1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Syslogの設定方法(コマンド)

1
Posted at

「ログそのものの見方」→「どこに表示するか」→「どこに保存するか」 の3つに分けると、かなり整理しやすいです 👍

1. システムログの表示形式

Cisco機器のログは、だいたい次のような情報で構成されています。

① シーケンス番号
② 日時
③ ファシリティ / シビリティ / メッセージ
④ 詳細

たとえば、

000123: Oct 7 10:25:33.123: %SYS-5-CONFIG_I: Configured from console by console

のような形です。

これを分解すると、

部分 意味
000123 ① シーケンス番号
Oct 7 10:25:33.123 ② ログが出た日時
%SYS-5-CONFIG_I ③ ファシリティ・シビリティ・メッセージ識別子
Configured from console by console ④ 詳細内容

① シーケンス番号

シーケンス番号は、

何番目のログか

を表します。

000001
000002
000003
...

という感じです。

ただし、

デフォルトでは表示されません

という点がポイントです。

イメージは、ログの「通し番号」です。


② 出力日時

次は、

そのログがいつ発生したか

です。

たとえば、

Oct 7 10:25:33

なら、

10月7日 10時25分33秒

に発生したログ、ということです。

トラブル調査では、

「何時から障害が起きたのか」

を見るのに非常に重要です。


③ ファシリティ / シビリティ / メッセージ

たとえば、

%SYS-5-CONFIG_I

なら、

%SYS - 5 - CONFIG_I

と分けて考えます。

部分 意味
SYS ファシリティ
5 シビリティ
CONFIG_I メッセージ識別子

ファシリティ

ファシリティは、

どの種類・機能から出たログなのか

です。

たとえば、

SYS
LINK
LINEPROTO
SECURITY

などがあります。

前回出てきた「Local7」はSyslogサーバーへ送る際のファシリティ設定の話で、ここに表示されるファシリティはCisco IOS内部のどの機能がメッセージを出したかを示すもの、と考えると整理しやすいです。


シビリティ

真ん中の数字が、

重大度

です。

たとえば、

%SYS-5-CONFIG_I
     ↑
     5

なら、

レベル5 = Notification

です。

前回の表とつながります。

数字 意味
0 Emergency
1 Alert
2 Critical
3 Error
4 Warning
5 Notification
6 Informational
7 Debugging

つまりログを見るだけで、

「これはどのくらい重要なログなのか」

が分かります。


④ 詳細

最後が人間が読む本文です。

Configured from console by console

なら、

コンソールから設定変更が行われました

という意味です。

つまりログは、

いつ?
↓
どの機能が?
↓
どのくらい重要な?
↓
何をした?

という順に読むと分かりやすいです。


ログの読み方まとめ

000123: Oct 7 10:25:33: %SYS-5-CONFIG_I: Configured from console by console
│        │                │   │   │         │
│        │                │   │   │         └ 詳細
│        │                │   │   └ メッセージ
│        │                │   └ シビリティ
│        │                └ ファシリティ
│        └ 日時
└ シーケンス番号

この図を覚えておくとかなり楽です。

2. システムログは「どこに表示するか」を決められる

Cisco機器ではログの表示先を変えられます。

大きく、

  • コンソール
  • 仮想ターミナル

があります。


コンソールライン

コンソール接続中は、

デフォルトでログが表示されます

つまり設定なしでも出ます。

PC
 │
 │ コンソールケーブル
 ▼
Cisco機器

ログレベルを変えたい場合は、

(config)# logging console <レベル>

です。

たとえば、

(config)# logging console 4

なら、

0
1
2
3
4

だけが表示されます。

つまり、

指定した数値以下 = それより重要なログ

が出ます。


仮想ターミナルライン

SSHやTelnetで接続している場合です。

PC
 │
 │ SSH / Telnet
 ▼
Cisco機器

こちらは、

デフォルトではログが表示されません

なので、自分で有効化する必要があります。

# terminal monitor

で表示開始。

# terminal no monitor

で表示停止です。

覚え方はかなりそのままです。

monitor
= 見る

仮想ターミナルでログレベルを変える

(config)# logging monitor <レベル>

です。

たとえば、

(config)# logging monitor 5

なら、

0〜5

が対象になります。


コンソールと仮想ターミナルの違い

接続 デフォルト 表示開始 レベル変更
コンソール 表示される 不要 logging console
SSH/Telnet 表示されない terminal monitor logging monitor

ここは試験でも比較されやすいです。

3. システムログの「保存先」

表示するだけでなく、

ログを後から確認できるように保存する

こともできます。

主な保存先は、

  • RAM
  • Syslogサーバー

です。


RAMに保存

Cisco機器自身のRAMにログをためる方法です。

これを、

buffered logging

といいます。

Cisco機器
┌──────────────┐
│ RAM          │
│ ログを保存   │
└──────────────┘

コマンドは、

(config)# logging buffered <数値>

です。

ただし、ここが少しややこしいです。


logging buffered の数値には2つの意味がある

同じコマンドですが、数字によって意味が変わります。

logging buffered 8192

なら、

RAMに8192バイト分保存

です。

一方、

logging buffered 5

なら、

レベル0〜5を保存

です。


なぜ区別できるの?

Syslogレベルは、

0〜7

しかありません。

一方、バッファサイズは、

4096以上

です。

なので、

5

ならレベル。

8192

ならサイズ。

とCisco IOSが判断できます。


覚え方

0〜7
   ↓
ログレベル

4096以上
   ↓
保存サイズ

ここは数字だけ見ると混乱しやすいので、この2段構えで覚えると良いです。


RAM保存の注意点

RAMなので、

再起動するとログは消えます

これも重要です。

RAM
↓
電源OFF
↓
消える

前回学んだRAMの性質そのものですね。


Syslogサーバーに保存

長期間保存したい場合は、

外部のSyslogサーバー

を使います。

Router ─┐
Switch ─┼──→ Syslogサーバー
Switch ─┘

設定は、

(config)# logging host <IPアドレス>

です。

例:

(config)# logging host 192.168.1.100

意味は、

「192.168.1.100へログを送って」

です。


ホスト名でも指定できる

たとえば、

(config)# logging host syslog-server

のように名前でも指定できます。

ただしその場合、

名前解決ができること

が必要です。

つまりDNSなどで、

syslog-server
↓
192.168.1.100

と変換できないといけません。

表示先と保存先を整理

ここまで混ざりやすいので、まとめます。

種類 目的 コマンド
コンソール 画面に表示 logging console
SSH/Telnet 画面に表示 terminal monitor
RAM 機器内に保存 logging buffered
Syslogサーバー 外部に保存 logging host

イメージすると、

               ┌→ コンソール表示
Cisco機器 ─────┼→ SSH/Telnet表示
               ├→ RAM保存
               └→ Syslogサーバー保存

です。

コマンド一覧

やりたいこと コマンド
コンソールのログレベル変更 logging console <レベル>
SSH/Telnetでログ表示 terminal monitor
SSH/Telnetのログ表示停止 terminal no monitor
SSH/Telnetのログレベル変更 logging monitor <レベル>
RAM保存サイズ指定 logging buffered <4096以上>
RAM保存レベル指定 logging buffered <0〜7>
Syslogサーバー指定 logging host <IP/ホスト名>

最後に全体を1枚で

Cisco機器でイベント発生
        ↓
システムログ生成
        ↓
┌─────────────────────┐
│ ログの中身          │
│ ①番号               │
│ ②日時               │
│ ③Facility/Severity  │
│ ④詳細               │
└─────────────────────┘
        ↓
どこへ出す?
        ↓
┌────────────┬─────────────┐
│ 表示       │ 保存         │
├────────────┼─────────────┤
│Console     │RAM           │
│SSH/Telnet  │Syslog Server │
└────────────┴─────────────┘

CCNA向け最重要ポイント

特に覚えておきたいのはこのあたりです。

Consoleはデフォルト表示

SSH/Telnetは terminal monitor が必要

logging buffered = RAM保存

logging host = Syslogサーバー指定

0〜7 = ログレベル

4096以上 = bufferedのサイズ

そしてログを読むときは、

番号 → 日時 → 誰が出した → 重大度 → 内容

という順に見ると、かなり読みやすくなります 📘

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?