没有退出的NodeJS投掷错误

马豪

正在处理可能引发多种类型错误的应用程序。对于每种不同类型的错误,节点进程必须以不同的退出代码终止。

目前,我抛出类似以下错误:

throw new Error1('Failed, because of reason 1'); throw new Error2('Failed, because of reason 2');

但是,每次使用退出代码8引发错误时,这都会导致过程退出。

我需要的是一种根据抛出的错误抛出特定退出代码的优雅方法。即当我抛出Error1时,它应该以代码1退出,而当我抛出Error2时,它应该以代码2退出。

此刻,它每次都以代码“ 8”退出。

我看过其他文章,并提出了使用process.on('uncaughtException', ...);将起作用的建议并且确实需要,但是它需要“捕获”错误,将其重新打印出来然后退出。

有什么建议?

非常感谢。

克里斯凯利

以下代码可让您执行所需的操作:

Error8.prototype = Error.prototype
process.on('uncaughtException', handleErrors)
throw Error8("Bad news...")

function Error8(message) {
    this.name = "Error8"
    this.message = message || ''
    this.errorCode = 8
}
function handleErrors (e) {
    if (!e.errorCode) {
        console.log('Unknown exception occurred')
        process.exit(1)
    }

    console.log("ECODE-" + e.errorCode + ": " + e.message)
    process.exit(e.errorCode)
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

退出程序而没有coredump或分段错误

来自分类Dev

Sinatra退出没有错误

来自分类Dev

Nodejs错误没有回溯

来自分类Dev

成功执行后,我的nodejs脚本没有自行退出

来自分类Dev

PyQt:退出时没有错误消息(回溯)

来自分类Dev

安装程序退出,没有明显的错误调用.NET方法

来自分类Dev

下载图像异步退出功能,没有错误

来自分类Dev

Firefox打开并退出,没有错误消息

来自分类Dev

Scenekit 写入退出没有错误

来自分类Dev

librdkafka 程序退出没有错误

来自分类Dev

nodejs scrypt崩溃而没有错误

来自分类Dev

申请没有退出

来自分类Dev

Docker进行投掷查找:'':没有这样的文件或目录

来自分类Dev

凉亭投掷错误

来自分类Dev

SwitchCompat投掷错误

来自分类Dev

jQuery Draggable投掷错误

来自分类Dev

依赖:PostgreSQL投掷错误

来自分类Dev

Django Lint投掷错误

来自分类Dev

投掷500错误

来自分类Dev

GetRolesAsync退出而没有跟踪

来自分类Dev

'pytest'退出没有错误,但是带有“ collected 0 items”

来自分类Dev

NodeJS Connect错误-没有方法'logger'

来自分类Dev

NodeJS Connect错误-没有方法'logger'

来自分类Dev

可执行程序突然停止工作:静默退出,没有错误,什么都没有

来自分类Dev

Visual Studio在断言失败时退出,没有错误消息

来自分类Dev

Mongodb(代码已退出,状态= 14)失败,但没有任何明显的错误

来自分类Dev

真正的基本代码没有返回错误,但是不起作用?(代码为-1073741571退出)

来自分类Dev

Gunicorn没有开始抛出gunicorn.service:失败,结果为“退出代码”。错误

来自分类Dev

为什么subprocess.run返回退出代码2,但日志中没有错误?

Related 相关文章

热门标签

归档