一尘不染

在EventEmitter警告之后使节点显示堆栈跟踪

node.js

我有这个错误:

(node:11164) Warning: Possible EventEmitter memory leak detected. 11 end listeners added. Use emitter.setMaxListeners() to increase limit

没有给出堆栈跟踪,所以我不知道哪个事件可能是罪魁祸首。

我试图通过覆盖来解决它,console.warn但是此时的堆栈跟踪没有用,因为console.warn添加侦听器时不会调用它,而是在随后的任意时间调用它。


阅读 219

收藏
2020-07-07

共1个答案

一尘不染

这在Node v6(或可能在v5)中发生了变化。

以前,堆栈跟踪是自动显示的,现在您必须自己生成一个:

process.on('warning', e => console.warn(e.stack));

记录在这里

2020-07-07