【问题标题】:What is the best use of process.on('uncaughtException', ...)?process.on('uncaughtException', ...) 的最佳用途是什么?
【发布时间】:2018-08-07 11:31:29
【问题描述】:

我正在学习错误/异常处理,但我不明白如何使用 process.on('uncaughtException', ...)。你能像trycatch一样使用它,还是只处理异常?

【问题讨论】:

  • 这是一个公平的问题,具有教育价值。
  • 我可以认为性能和应用程序设计是异步和基于事件的,而 try/catch 是同步的。

标签: javascript node.js process


【解决方案1】:

正如Process Documentation 中所说,提供信息并控制当前(节点)进程。

我会在 node/express 的后端开发中大量使用它,一个简单的例子?记录我的应用程序的错误

 // ERROR LOG MANAGEMENT
// =====================================================================
let errorLogStream = fs.createWriteStream(__dirname + '/logs/error.log', {
  flags: 'a'
})

// ERROR HANDLING
// =====================================================================
process.on('uncaughtException', (err, next) => {
  var date = new Date()
  console.error(`+++++++ ${date} error found, logging event +++++++`)
  console.error(err.stack)
  errorLogStream.write(`Date: ${date}. Err: ${err.stack}`)
  return
})

我认为主要区别在于事件名称本身,如果您正在执行某些任务并且有错误,请处理它,您为什么要扔它来捕获它?我主要用它来解决与我的逻辑无关的问题

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多