Monit
通過monit結合解除安裝、停止、安裝、啟動腳本
我們有偵聽埠 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
使用Monit
start 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
如果您希望“停止程序”執行腳本,請提供腳本的完整路徑。