Linux
Ubuntu
運用
監視

monitで手軽にプロセスの監視を行う

More than 5 years have passed since last update.

今回の記事はUbuntuでの設定を想定しています。

他の環境をお使いの方は適宜読み替えてください。



インストール

$ sudo aptitude install monit


monitの設定

/etc/monit/monitrcにて監視タイミングなどの設定を行います。


監視の実行タイミング

監視を行う間隔を秒単位で設定します。

set daemon 120


ログの出力先

syslogなどにも出力できるそうですが、とりあえず別ファイルに。

set logfile /var/log/monit.log


アラートメールを送信するときに使用するSMTPサーバ

set mailserver localhost


アラートメールのフォーマット

フォーマットには変数も埋め込めます。詳細は公式サイトでご確認ください。

set mail-format {

from: monit@$HOST
subject: monit alert -- $EVENT $SERVICE
message: $EVENT Service $SERVICE
Date: $DATE
Action: $ACTION
Host: $HOST
Description: $DESCRIPTION

Your faithful employee,
Monit
}


アラートメールの送信先

下記のように複数行で設定することでアラートメールの送信先を複数設定できます。

set alert admin@foo.bar

set alert operator@foo.bar
set alert alert@foo.bar not on { INSTANCE }

メールアドレスの後ろにnot on { INSTANCE }をつけると、monitの設定変更などの通知がこなくなります。


監視項目の読み込み

監視項目は別ファイルにしておいた方が管理がしやすいので。

include /etc/monit/conf.d/*


監視項目の設定

/etc/monit/conf.d配下に監視項目を定義したテキストファイルを置いていきます。


Unicornのプロセス監視を行う場合

ただしunicornは/etc/init.d/unicornという名前でinitスクリプトが作成されているものとします。


/etc/monit/conf.d/unicorn

check process unicorn

with pidfile /path/for/pids/unicorn.pid
start program = "/bin/sh -l -c '/etc/init.d/unicorn start'"
stop program = "/bin/sh -l -c '/etc/init.d/unicorn stop'"

group unicorn



参考にしたサイト

http://mmonit.com/monit/

http://shanon-tech.blogspot.jp/2011/11/15monit.html

http://blog.twiwt.org/e/232155

http://ex-cloud.jp/techblog/?p=28