Node Js 停止时如何查看错误?
How can I see the error when Node Js has stopped?
我有一个带有 nginx 的 NodeJs 服务器。它 运行 在 ubuntu 服务器上。它不时显示“502”。我正在 运行 通过 pm2 安装它。
现在真正的问题是:当我登录并查看 pm2 时,它没有显示“错误”。当我 运行“重启”时,“502”消失并开始正常工作。
问题:
1.) 我可以在服务器停止时自动发送电子邮件吗?
2.) 我可以将每个事件写入应用程序中的文件吗? (我可以通过查看
最后一个事件?)我正在使用 MongoDB.
3.) 如何捕获错误?
有多种方法可以做到这一点。您没有正确记录和 stopped/restarted 应用程序,这意味着您的应用程序需要改进代码质量和正确处理错误。
您可以使用 uncaughtException
和 unhandledRejection
事件来发送电子邮件和登录文件
process
.on('unhandledRejection', (reason, p) => {
//'Unhandled Rejection at Promise'
// send email or write into file
})
.on('uncaughtException', err => {
//'Uncaught Exception thrown'
// send email or write into file
process.exit(1);
});
除了上面的,你还可以使用第三方的监控工具连pm2也提供了
我有一个带有 nginx 的 NodeJs 服务器。它 运行 在 ubuntu 服务器上。它不时显示“502”。我正在 运行 通过 pm2 安装它。
现在真正的问题是:当我登录并查看 pm2 时,它没有显示“错误”。当我 运行“重启”时,“502”消失并开始正常工作。
问题:
1.) 我可以在服务器停止时自动发送电子邮件吗?
2.) 我可以将每个事件写入应用程序中的文件吗? (我可以通过查看
最后一个事件?)我正在使用 MongoDB.
3.) 如何捕获错误?
有多种方法可以做到这一点。您没有正确记录和 stopped/restarted 应用程序,这意味着您的应用程序需要改进代码质量和正确处理错误。
您可以使用 uncaughtException
和 unhandledRejection
事件来发送电子邮件和登录文件
process
.on('unhandledRejection', (reason, p) => {
//'Unhandled Rejection at Promise'
// send email or write into file
})
.on('uncaughtException', err => {
//'Uncaught Exception thrown'
// send email or write into file
process.exit(1);
});
除了上面的,你还可以使用第三方的监控工具连pm2也提供了