3 ms·
Like others have already said, monit also deserves a mention. Whilst it can start the process for you, it probably doesn't really fall under the same category.
by gingerlime 14y ago
Like others have already said, monit also deserves a mention. Whilst it can start the process for you, it probably doesn't really fall under the same category. It's more about making sure things are running, do not consume too much resources etc.
However, the flexibility of monit beyond process monitoring is really great. Anything from filesystem usage, cpu, memory to monitoring tcp ports, file checksums, you name it. I'm yet to find something you can't do with this little toy, and it's rock solid. I even use it to pull graphite stats[1] and report when certain thresholds are reached, like the percentage of 500s compared to other response codes in my nginx logs.
I also personally like its configuration syntax better than most yaml-like DSLs. It feels almost like writing natural text.
[1]http://blog.gingerlime.com/2013/graphite-alerts-with-monit/ http://blog.gingerlime.com/2013/graphite-alerts-with-monit/
- deleted 14y ago[deleted]
- bdcravens 14y ago+1 to monit. I have an app that does a lot of scraping via Selenium, headless using xvfb and Firefox. If the Selenium scripts fail, Firefox never closes. On an EC2 micro instance, it doesn't take long before 40MB+ FF processes kill other things, like Tomcat (which runs my queue processor). I use monit to watch the root URL, and when it fails, it fires off a handful of scripts that restart the various pieces of the application.