2015-05-09 6 views
1

Попытка получить приложение nodejs и запустить с pm2.pm2 json config не работает правильно приложение

Мы используем SASS и перестраиваем файлы css при смене файла с помощью «node-sass-middleware». Все работает отлично до тех пор, пока pm2 не начнет автоматически перезапускать приложение каждый раз, когда связующее ПО sass перестроит файл css ... о чем мы это говорим:

pm2 start app.js --watch Итак, после некоторые чтения документов, кажется, вы должны иметь возможность настроить pm2 с помощью json-файла, и у него есть опция «ignore_watch».

Итак, следуя руководству по GitHub: https://github.com/Unitech/PM2/blob/master/ADVANCED_README.md#json-app-declaration мы устанавливаем конфигурационный JSON файл, чтобы выглядеть следующим образом:

{ 
    "name"  : "ourApp", 
    "script"  : "server.js", 
    "watch"  : true, 
    "ignore_watch" : ["public/css"], 
    "env": { 
     "NODE_ENV": "development" 
    } 
} 

Проблема заключается в том, как только мы пытаемся запустить журналы PM2 выплюнуть 1000-х линий журнал ошибок все выглядит немного как это:

PM2: 2015-05-09 15:32:00: Error: watch ENOSPC 
PM2:  at errnoException (fs.js:1024:11) 
PM2:  at FSWatcher.start (fs.js:1056:11) 
PM2:  at Object.fs.watch (fs.js:1081:11) 
PM2:  at createFsWatchInstance (/usr/local/lib/node_modules/pm2/node_modules/chokidar/lib/nodefs-handler.js:24:15) 
PM2:  at setFsWatchListener (/usr/local/lib/node_modules/pm2/node_modules/chokidar/lib/nodefs-handler.js:47:19) 
PM2:  at EventEmitter.NodeFsHandler._watchWithNodeFs (/usr/local/lib/node_modules/pm2/node_modules/chokidar/lib/nodefs-handler.js:177:15) 
PM2:  at EventEmitter.NodeFsHandler._handleFile (/usr/local/lib/node_modules/pm2/node_modules/chokidar/lib/nodefs-handler.js:201:8) 
PM2:  at EventEmitter.<anonymous> (/usr/local/lib/node_modules/pm2/node_modules/chokidar/lib/nodefs-handler.js:353:12) 
PM2:  at Object.oncomplete (fs.js:107:15) 
PM2: 2015-05-09 15:32:00: Error: watch ENOSPC 
PM2:  at errnoException (fs.js:1024:11) 
PM2:  at FSWatcher.start (fs.js:1056:11) 
PM2:  at Object.fs.watch (fs.js:1081:11) 
PM2:  at createFsWatchInstance (/usr/local/lib/node_modules/pm2/node_modules/chokidar/lib/nodefs-handler.js:24:15) 
PM2:  at setFsWatchListener (/usr/local/lib/node_modules/pm2/node_modules/chokidar/lib/nodefs-handler.js:47:19) 
PM2:  at EventEmitter.NodeFsHandler._watchWithNodeFs (/usr/local/lib/node_modules/pm2/node_modules/chokidar/lib/nodefs-handler.js:177:15) 
PM2:  at EventEmitter.NodeFsHandler._handleFile (/usr/local/lib/node_modules/pm2/node_modules/chokidar/lib/nodefs-handler.js:201:8) 
PM2:  at EventEmitter.<anonymous> (/usr/local/lib/node_modules/pm2/node_modules/chokidar/lib/nodefs-handler.js:353:12) 
PM2:  at Object.oncomplete (fs.js:107:15) 
PM2: 2015-05-09 15:32:00: Process with pid 9155 still not killed, retrying... 
PM2: 2015-05-09 15:32:00: Process with pid 9155 still alive after 800ms 

благодаря ответу ниже Это, кажется, виновника и, по-видимому, в Linux World ENOSPC не означает, что нет ди sk space left .., но при использовании только 2.1gig на всем dev-сервере с общим объемом жесткого диска 25gig это не может быть проблемой.

PM2: 2015-05-09 15:32:00: Error: watch ENOSPC

Более того, когда мы бежим PM2 из кли, как указано на самом верху все работает отлично ...

Нам действительно нужно, чтобы это работало, как это вызывает хаос для команды разработчиков.

Неужели кто-нибудь еще попал в эту проблему?

Спасибо, Джон

+0

Полностью застрял на этом. – John

ответ

0

ENOSPC means no space left on the device. Так проверьте, чтобы увидеть, если один из ваших файловых систем полно. Предполагая, что вы используете Linux или другую Unix-подобную операционную систему, вероятными кандидатами являются /tmp и /var.

+0

Я не думаю, что это проблема, хотя у меня 24gb доступно для сервера и общего использования, то есть: 'dh -h /' только 2.1gb – John

+0

'df -h /' только говорит вам об использовании в корне раздел. Если у вас есть отдельный раздел для '/ tmp' или'/var', они могут быть заполнены. – Trott

+0

размер tmp и var был не совсем таким большим. 13mb и 745mb соответственно ... Когда я не запускаю pm2 из json-файла, нет проблем, и все в порядке. – John

Смежные вопросы