Node.js - 服务器在启动时启动时崩溃,手动启动时不会崩溃

时间:2015-04-27 23:46:51

标签: javascript linux node.js

我正在运行Node.js和Socket.io进行在线聊天。 我在:

中创建了一个文件
/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上运行。

如何确定具体原因?

1 个答案:

答案 0 :(得分:1)

我设法解决了我的问题,经过一番搜索,我发现了尾部命令。

我的问题有点难以追踪,因为Node.js是一个由autostart启动的进程所以当我启动终端并连接到服务器时,进程基本上只在后台运行,我不会得到任何输出(包括异常消息)。

无论如何,对我有用的解决方案是:

我打字

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

然后我去了以下目录

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

在fd目录中,您可以从中输出很少的对象,但是如果要附加和监听服务器输出(包括未捕获的异常),则需要1。 所以:

tail -f 1

这样我就能够让网站崩溃并看到输出。