Ciscoのルータのファンがあまりにもうるさく、静音ファンに取り替えちゃったりなんかすると、
交換したファンの回転数によっては↓のようなエラーメッセージが出続けます。
Mar 13 18:44:32.221 JST: %ENVMON-4-FAN_LOW_RPM: Fan 1 service recommended Mar 13 18:44:32.221 JST: %ENVMON-4-FAN_LOW_RPM: Fan 2 service recommended Mar 13 18:44:32.221 JST: %ENVMON-4-FAN_LOW_RPM: Fan 3 service recommended
ログバッファやsyslogがこればっかりになってしまうし、debug中にも表示されるので、ちょいと邪魔です。
そんな時に役立つのが”logging discriminator”コマンドです。
このコマンドでログメッセージをフィルタリングすることができます。
設定の前に、Ciscoのログメッセージのおさらいです。
Ciscoのログメッセージは”%facility-severity-MNEMONIC:Message-body”の形式ですので、先ほどのFANアラームはそれぞれ、
Facility: ENVMON
Sevirity: 4
Mnemonic: FAN_LOW_RPM
Message-body: Fan 1 service recommended
に分けられます。
では、設定してみましょう。
logging discriminatorでは、ログメッセージの要素それぞれの文字列を引っ掛けることができます。
今回は、フィルタの名前を”hogehoge”として、すべての要素を入れてみます。
Router(config)#logging discriminator hogehoge severity drops 4 facility drops ENVMON mnemonics drops FAN_LOW_RPM msg-body drops Fan [1-3] service recommended
# すべての要素を入れなくても、フィルタリングできます。今回の場合は、”logging discriminator hogehoge mnemonics drops FAN_LOW_RPM”だけでもOKです。
次に、作成したフィルタ”hogehoge”をフィルタリングしたいlogging設定に適用します。
◆内部メモリ logging buffered discriminator hogehoge 65536 ◆コンソール logging console discriminator hogehoge ◆ターミナル(terminal monitor) logging monitor discriminator hogehoge ◆Syslog logging host 1.1.1.1 discriminator hogehoge
これで、バッファ、コンソール、SyslogにFANアラームが出なくなりスッキリしますね。
本当にFanが止まったときはわかりませんけど…