web-dev-qa-db-ja.com

モニットアラートを繰り返す

状態が修正されるまで、monitに一定の間隔でアラートを送信し続けるにはどうすればよいですか?設定例は次のとおりです。

パス/dev/sda1
でファイルシステムdatafsを確認し、15サイクル以内に5回スペース使用率が80%を超える場合は、アラート

ここで、アラートを1回だけ受け取り、それ以上は受け取りません。問題が修正されるまでmonitをシャットダウンしないようにします。

4
John Bachir

Monitのマンページから:

alert foo@bar with reminder on 1 cycle

これにより、プロセスチェックが失敗状態になると(たとえば、かなり多く)、プロセスチェックが繰り返されるたびにアラートが繰り返されます。これを設定して、1時間以内にしか思い出させないようにすることもできます

これは、チェックスタンザではなく、アラートの宛先を設定する場所に設定されているようです。ただし、グローバルなものだけでなく、個々のチェック/サービスのアラート先を指定することもできます。

check filesystem datafs with path /dev/sda1
  alert foo@bar on { resource } with reminder on 10 cycles
  if space usage > 80% for 5 times within 15 cycles then alert
6
Daniel Lawson

デフォルトでは、トリガーが一致したときにアラートを出し、サービスが成功したときに再度アラートを出します。したがって、ディスク使用率が79%から81%の間で変動すると、しきい値に達するとアラートを受け取ります。

ただし、アラートがトリガーされた後にリマインダーが必要です。これを行うには、Monit内で リマインダー機能 を使用できます。

Monitの設定例は次のとおりです。

For example if you want to be notified each tenth cycle if a service remains in a failed state, you can use:

  alert foo@bar with reminder on 10 cycles
Likewise if you want to be notified on each failed cycle, you can use:

  alert foo@bar with reminder on 1 cycle

この言語でスタンザを拡張できます。

check filesystem datafs with path /dev/sda1
  if space usage > 80% for 5 times within 15 cycles then alert 

ただし、グローバルを変更する必要がありますset alertステートメントまたはチェックスタンザレベルで変更します。

set alert [email protected] with reminder on 5 cycles
4
ewwhite