CNode

为何nodejs出错后不能像java、ruby等一下子打印出错误栈呢?!

Ppiginzoo发布于12 年前最后回复12 年前6 回复10544 浏览0 收藏

很不爽,每次出错无法在console上看到出错的错误栈,只能人为的加console.trace(),作为新手,请教大家有无方法可以即时打印错误栈呢?

感谢!

查看回复

回复 (6)

M
mrFranklin#1·12 年前

只在最外层catch一下就行了,比如在app.js下。 打印err.stack: process.on('uncaughtException', function(err) { console.log(err.stack); });

另外,不catch的话,一般出错都会打出堆栈的啊~

D
danielking#2·12 年前
process.on('uncaughtException', function(err) {
  console.trace()
});

这样行吗?

P
piginzoo#3·12 年前

感谢 @danielking ,这样可以做到,但是我必须所有出错的地方都要catch住,但是,没有catch的地方除了错,我很难排错。 像java,ruby,python在异常的时候,都会在控制台上打出未捕获的异常的错误栈来,很是方便拍错。 nodejs上如何办到呢?

B
bsspirit#4·12 年前

可以用domain统一进行异常处理 http://blog.fens.me/nodejs-core-domain/

A
AdoHe#5·12 年前

推荐用domain。。。

P
piginzoo#6·12 年前

@bsspirit @AdoHe 好东东,回头试试,感谢!

参与回复
登录后即可参与回复。登录