2015-04-27 2 views
0

Я запускаю Node.js и Socket.io для онлайн-чата. Я создал файл:Node.js - Сбой сервера при запуске при запуске, не сбой при запуске вручную

/etc/init/example.conf 

имеет две линии:

start on startup 
exec forever start /var/www/example.com/html/server.js //location of server file. 

Всякий раз, когда я начинаю загружать файл в чат приложения, он выходит из строя, но мгновенно перезагружается.

Всякий раз, когда я убиваю процесс узла, и запускаю его вручную - он отлично работает.

Я также не могу получить все журналы или что-нибудь из терминала, как, когда он автоматически начал - не печатает ничего мне на терминал.

Я по-прежнему новичок в Node.js и Linux в целом. Node.js работает на Express + Jade.

Как определить конкретную причину?

+0

добавить файл регистрация – Transcendence

+0

@Transcendence Я только что прочитал о методе хвоста, и я смог прикрепить свой терминал для автоматического начала процесса. Я нашел ошибку – arleitiss

+0

@arleitiss, если вы нашли решение своей проблемы, можете ли вы опубликовать ее в качестве ответа, желательно с некоторым описанием того, как вы это поняли –

ответ

1

мне удалось решить мою проблему, после недолгих поисков вокруг я узнал о команде хвоста.

Моя проблема была сложнее отслеживать, потому что Node.js был процессом, запущенным автозапуском, поэтому, когда я запустил терминал и подключился к серверу, процесс был просто запущен в фоновом режиме в основном, и я не получил никакого вывода (включая исключение Сообщения).

Во всяком случае, решение, которое работало для меня было:

я напечатал

ps aux | grep node //to find PID of node process 

Затем я пошел в следующий каталог

cd /proc/[pid of running node service]/fd 

В Fd каталоге есть несколько объектов, которые вы можете получить вывод, но если вы хотите присоединить и прослушать вывод серверов, включая исключенные снимки, вам понадобится 1. Итак:

tail -f 1 

Таким образом, я смог вызвать сбои сайта и увидеть выход.

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