当前位置 : 主页 > 网页制作 > Nodejs >

node.js – Sails – 捕获使服务器崩溃的全局适配器错误

来源:互联网 收集:自由互联 发布时间:2021-06-16
我正在尝试找到处理连接错误的最佳位置,或任何其他导致服务器崩溃的全局错误. 什么是捕获适配器/全局错误的正确位置,而不是让它们崩溃服务器? 具体来说,我想以优雅的方式处理这
我正在尝试找到处理连接错误的最佳位置,或任何其他导致服务器崩溃的全局错误.

什么是捕获适配器/全局错误的正确位置,而不是让它们崩溃服务器?

具体来说,我想以优雅的方式处理这些类型的错误:

Error spawning mySQL connection:
error: Hook failed to load: orm (Error: connect ECONNREFUSED)
error: Error encountered while loading Sails core!
error: Error: connect ECONNREFUSED
来自帆文件: http://sailsjs.org/#!documentation/config.500

这就是错误处理风帆从配置中暴露出来的

如果您的错误通过了,您可以挂钩,否则您可以挂钩节点的进程

process.on('uncaughtException', function (err) {
  if (err.toString() === 'Error spawning mySQL connection') {
    //rende some error page
  }
})

如果抛出的异常是异步的,那么捕获它的唯一方法就是进程

但请注意,这些类型的错误几乎总是无法恢复,因此崩溃(和重新启动)是最好的方法

加载的大多数模块使用局部变量并通过module.exports只显示其内部的一个子集,卸载模块并重新启动其本地代码可以完成,但是您需要卸载所有相关模块以及所有依赖模块的模块.这就是为什么正常的方法是让它崩溃

网友评论