LoginSignup
7
7

More than 5 years have passed since last update.

monitで監視項目ごとに監視間隔を設定する

Posted at

■ monitとは

monitは、オープンソース・ソフトウェア監視ソフト。
手軽にファイル・システムの監視を行える。

■ monitの設定ファイル

monitの設定ファイルは"/etc/monitrc"にある。
詳細は公式のTHE MONIT CONTROL FILEを参照。

ここに、下記のような記載があるはずだ。

SET DAEMON <seconds>

で監視間隔の設定を行っている。
"SET DAEMON 60"なら60秒間隔となる。

■ 監視項目を分ける

"/etc/monitrc"に以下の様に記載する。

include /etc/monit.d/*.conf

これで、/etc/monit.d/以下に監視項目ごとに
●●.confファイルを用意することで、監視項目を分けられるようになる。

■ 例 : apache.conf
=====================================================
 check process apache with pidfile /var/run/httpd.pid
       start = "/etc/init.d/httpd start"
       stop  = "/etc/init.d/httpd stop"
=====================================================

■ 項目別監視間隔の変更

監視間隔の設定は、"SET DAEMON"だが、
monitデーモンの監視間隔で、/etc/monit.d/*.confに書いても、
他の監視間隔の設定も変更されてしまう。

個別の設定の仕方は公式のSERVICE POLL TIMEに書いてある。

3つの設定方法があるようだ。

  • 基準間隔 * 倍数の間隔で監視する
 check process nginx with pidfile /var/run/nginx.pid
       every 2 cycles

SET DAEMONで設定した間隔*[number]の間隔で監視する。

  • 指定時刻に監視する方法
 check program checkOracleDatabase
        with path /var/monit/programs/checkoracle.pl
       every "* 8-19 * * 1-5"

cronに類似する形式で監視する時刻を指定するタイプ。
ただし、cronにある間隔値の設定などは使えない模様。

[/]の後ろが間隔値
0-59/5 * * * * root /usr/bin/mrtg /etc/mrtg/mrtg.cfg

あくまで、公式のExampleにあるような形式でしか利用できないようだ。

  • 指定した時刻に監視しないようにする設定
 check process mysqld with pidfile /var/run/mysqld.pid
       not every "* 0-3 * * 0"

指定した時刻に監視しないようにする設定。
設定の形式は上のものと同じ。

7
7
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
7
7