[munin] アラートメールを出す方法 [syslog]

さて、皆様ご存じのとおり、”Munin“では、Plugin毎に「Critical」「Warning」の閾値や、取得できなかった場合の「Unknown」の状態を決められており、以上のあるグラフ(サーバ)を特定することができるようになってます。

muninのアラート数
muninのアラート数
とても便利な機能ではありますが、標準の状態ではアラートの発砲機能は動いていませんし、ログにも出力されません ((厳密には、syslogへは出力されない)) 。

それでは何かと不便ですので、閾値を超えた場合、状態が取得できなかった場合などに、メールを送付する、syslog へ出力する方法についてご説明します。

しますって程、仰々しいものではなくて、公式に載ってるわけですが。

muninでアラートメールを出す方法

公式の”HowToContact – Munin“に書かれているように、munin.confをちょっと修正すれば簡単にできます。
munin.conf から、次の場所を探してください。your@email.address.here を送りたい相手のアドレスにするだけです。簡単ですね。

contact.email.command mail -s "Munin-notification for ${var:group} :: ${var:host}" your@email.address.here

muninで、もう一人にアラートメールを出す方法

good alert一人だけだと不安ですよね。もう一人くらいメールを送りたくありませんか?
多分、次の行に似たような行があります。こちらもyour@email.address.here を送りたい相手のアドレスにするだけです。

contact.anotheruser.command mail -s "Munin notification" your@email.address.here

ご覧頂けるとわかると思いますが、ただ、mailコマンドを実行しているだけなので、メールのタイトルは好きに変更できますね。
変数も ${var:graph_title} や ${var:graph_category} なども利用できそうです。

張り切って書いてますが、どう考えても”棚からパルチャギ“に詳しく書いてあるので、こちらも参考にしていただくほうが楽しいと思います(;´Д`)

syslogへ出力する方法

要するに、”contact.<識別名>.command” 以降に、コマンドを記述すると、そのコマンドを実行してくれるわけなので、同じ方法で syslog へ出力する方法をとることができるわけですね。

コマンド自体は、次のものを Active にするだけで良さそうです。

contact.syslog.command logger -p user.crit -t "Munin-Alert"

コマンドをいろいろと組み合わせることによって、閾値超えの場合に自動的に何かをさせることができるようになるわけです。面白くないですか?( ・ิω・ิ)

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です