Monit

通過monit結合解除安裝、停止、安裝、啟動腳本

  • February 13, 2013

我們有偵聽埠 9000 的套接字偵聽器,所以下面是我們為 monit 編寫警報的方式。偵聽器通過 yajsw 守護程序工具執行。因此,目前當它在埠 9000 上失敗時,我們會收到一封電子郵件。我們要擴展的是,如果它不執行停止,解除安裝,安裝,最後啟動程序。我們有所有流程的腳本,但是如何進行監控?所有這些都在 shell 腳本文件中。

check process cs9000 with pidfile /var/run/wrappercs9000.pid # check your app pid

 start program  = 
 stop program  =
if failed port 9000    # if you want to check your app that listen on port 9000
   then 
   restart

使用Monitstart program ,在提供和stop program指令之前,您將無法重新啟動程序。當您填充這些選項並重新啟動 Monit 時,您將能夠根據流程條件採取措施。

一個例子:

check process nslcd
       with pidfile "/var/run/nslcd/nslcd.pid"
       start program = "/sbin/service nslcd start"
       stop program = "/sbin/service nslcd stop"
       if 10 restarts within 11 cycles then timeout
       if cpu usage > 95% for 11 cycles then restart
       if totalmemory > 472 MB then restart

如果您希望“停止程序”執行腳本,請提供腳本的完整路徑。

引用自:https://serverfault.com/questions/478220