こんにちは! JQです。
前回は『 OSS編~Sensuを試してみる③~ 』と題して、Monitoring FrameworkのSensuでメール通知を試してみました。
今回は『OSS編~Sensuを試してみる④~』と題して、Monitoring FrameworkのSensuのプラグインでメール通知を試してみたいと思います。
mailer.rbプラグイン
1. mailer.rbのインストール
スクリプトと設定ファイルを取得します。
1$ sudo wget -O /etc/sensu/handlers/mailer.rb https://raw.github.com/sensu/sensu-community-plugins/master/handlers/notification/mailer.rb2$ sudo wget -O /etc/sensu/conf.d/mailer.json https://raw.github.com/sensu/sensu-community-plugins/master/handlers/notification/mailer.json実行権限を付与します。
1$ sudo chmod 755 /etc/sensu/handlers/mailer.rbSensuと一緒にインストールされたRubyを使用するようにします。
1$ sudo vim /etc/default/sensu2EMBEDDED_RUBY=true※gem mailがない場合はインストールしておきます。
1$ sudo /opt/sensu/embedded/bin/gem install mail -v 2.5.4 --no-ri --no-rdoc5.設定ファイル
以下のメールサーバの設定ファイルを修正します。
1$ sudo vim /etc/sensu/conf.d/mailer.json2{3 "mailer": {4 "admin_gui": "http://admin.example.com:8080/",5 "mail_from": "sensu@example.com",6 "mail_to": "monitor@example.com",7 "smtp_address": "smtp.example.org",8 "smtp_port": "25",9 "smtp_domain": "example.org"10 }11}mailerのHandlerを作成します。
1$ sudo vim /etc/sensu/conf.d/handler_mailer.json2{3 "handlers": {4 "mailer": {5 "type": "pipe",6 "command": "/etc/sensu/handlers/mailer.rb"7 }8 }9}チェックプロセスのHandlerを修正します。
1$ sudo vim /etc/sensu/conf.d/checks/cron_process.json2{3 "checks": {4 "cron_process": {5 "command": "check-procs.rb -p cron -C 1",6 "handlers": [7 "default",8 "mailer"9 ],10 "subscribers": [11 "cron"12 ],13 "interval": 30,14 "notification": "Cron is not running",15 "occurrences": 516 }17 }18}設定を反映させます。
1$ sudo /etc/rc.d/init.d/sensu-server restart2$ sudo /etc/rc.d/init.d/sensu-client restart6.確認
それでは確認してみましょう!
cronを停止します。
1$ sudo /etc/rc.d/init.d/crond stop以下のように整形されたメールが届けば成功です。
1CheckProcs OK: Found 1 matching processes; cmd /cron/2Admin GUI: http://ec2xx-xx-xxx-xx.compute-1.amazonaws.com:8080/3Host: ip-xx-xxx-xx-xxx.ec2.internal4Timestamp: 2014-06-10 11:42:18 +09005Address: xx.xxx.xx.xxx6Check Name: cron_process7Command: check-procs.rb -p cron -C 18Status: 09Occurrences: 5いかがでしたでしょうか?
次回もお楽しみに!!!