Я настоятельно рекомендую использовать оба Monit И upstart .Upstart позволяет легко деамонизировать node.js, а Monit поставляется с множеством полезных проверок приложений, включая использование памяти, HTTP-запросы, использование процессора, ...
Это пример самой простой настройки, которую вы можете получить,Вы также можете легко добавить другую конфигурацию monit (с тем же сценарием запуска и остановки), но с использованием файла PID и статистики процесса мониторинга.
Для приведенной ниже конфигурации создайте в вашем приложении простой локальный обработчик запросов, который простоесли все в порядке, отвечает 200.
Конфигурация Monit:
check host app_name with address 127.0.0.1
start "/sbin/start app_name"
stop "/sbin/stop app_name"
if failed port 80 protocol HTTP
request /ok
with timeout 5 seconds
then restart
Сценарий обновления (/ etc / init / app_name):
description "app_name"
start on startup
stop on shutdown
script
# Node needs HOME to be set
export HOME="path/to/node/app"
exec sudo -u nodejs /usr/local/bin/node path/to/node/app/server.js production 2>>/var/log/app_name.error.log >>/var/log/app_name.log
end script