捕获node.js的崩溃原因
我有一个用node.js编写的脚本,它使用'net'库并通过tcp与远处的服务进行通信。 这个脚本是使用'node script.js >> log.txt'命令启动的,并且使用console.log()函数logging的脚本中的所有内容都被写入log.txt,但是有时候脚本会死掉,我找不到原因在脚本崩溃的时候log.txt被logging了。
我怎样才能捕捉到崩溃的原因?
通过分解stdout
和stderr
来捕获exception要容易得多。 像这样:
node script.js 1> log.out 2> err.out
默认情况下,节点将正常输出logging到标准输出,我相信你用>>
来捕获。
正如在评论中指出的那样,分段错误是shell发送到stderr的信号,不一定是你的程序。 看到这个unix.stackexchange其他选项的答案。
你不能听uncaughtException
事件 。 某事沿着=>
process.on('uncaughtException', function (err) { console.log('Caught exception: ' + err); });
PS:在此之后,根据FelixGeisendörfer撰写的这篇文章,build议您重启进程
- MongoDB聚合算术操作 – 子文档字段
- 摩卡忽略了一些testing,尽pipe它们应该运行
- 生成SSL密钥以使用node.js
- 节点js +多个嵌套的内部函数与callback
- Win 8.1,Vagrant,Chef,Ubuntu,Ember-cli,ember new“npm ERR! tar.unpack untar error /home/vagrant/.npm/“
- 追加到一个已经存在的文件nodejs?
- 使用节点缓冲区或fileStream与formDatafile upload
- 离子应用程序中不受信任的节点代码 – 如何为我自己的应用程序定义和执行防火墙规则?
- 使用数据库查找在节点中导出大文件 – 避免多个数据库调用?