2014-03-24 26 views
0

我正在努力使upstartmonit獲得節點服務器,而不是使用cron作業運行腳本來檢查事情。我已經建立了使用的東西像os.loadavg()os.totalmem()等節點os模塊的服務器上的管理儀表板...Node.js Ubuntu和Monit

的問題是,當monit運行,os.loadavg()總是返回[0, 0, 0]。有其他人遇到過這個問題嗎? monit創建一個鎖還是一些不允許Node讀取該屬性的東西?

在此先感謝您的幫助!

monit的腳本

check process flinch 
    with pidfile "/var/run/flinch.pid" 
    start program = "/sbin/start flinch" 
    stop program = "/sbin/stop flinch" 
    if loadavg (1min) > 4 then alert 
    if loadavg (5min) > 2 then alert 
    if memory usage > 0% then alert 
+0

請在您的問題中包含您用於運行服務器的monit配置以及最低限度重現問題的服務器代碼。 – Louis

+0

@路易新增了'monit'腳本。正如我在文章中提到的,產生問題的服務器的代碼是'os.loadavg()'。 – nathansizemore

+0

如果您停止使用'/ sbin/start flinch'手動啓動軟件,會發生什麼情況?你還會遇到同樣的問題嗎? – Louis

回答

0

爲了給這個問題做了封,我從系統檢查刪除monit並寫了一個定製的bash腳本來檢查的過程中,它每分鐘cron工作期間運行的。 Monit似乎在使用時會鎖定系統統計信息。