Node.js NodeJS:是否可以显示调用异步函数的堆栈跟踪?

Node.js NodeJS:是否可以显示调用异步函数的堆栈跟踪?,node.js,debugging,trace,Node.js,Debugging,Trace,节点库中的大多数API在设计上都是异步的。在回调中引发异常时,stacktrace仅显示从进程开始的调用堆栈。\u tickCallback 我想知道是否有一个技巧可以同时显示触发回调的函数的堆栈跟踪。您可以查看长堆栈跟踪,看看它是否符合您的需要。 该模块称为堆叠。您所要做的就是安装它: npm install --save stackup 然后要求: require('stackup'); 更多信息请点击此处:在节点8版本中出现了async\u hooks 将其用于Node.js 12中的

节点库中的大多数API在设计上都是异步的。在回调中引发异常时,stacktrace仅显示从进程开始的调用堆栈。\u tickCallback


我想知道是否有一个技巧可以同时显示触发回调的函数的堆栈跟踪。

您可以查看长堆栈跟踪,看看它是否符合您的需要。 该模块称为堆叠。您所要做的就是安装它:

npm install --save stackup
然后要求:

require('stackup');

更多信息请点击此处:

在节点8版本中出现了
async\u hooks


将其用于Node.js 12中的异步堆栈跟踪

,异步堆栈跟踪随附标志

--async-stack-traces

No.JS基金会发布后

缺点:一些额外的代码行——必须打包所有的异步代码。使用
try/catch
调用函数(也可以使用
promise.catch(…)
)。然后创建一个新的
Error
对象,并将其
stack
属性添加到现有堆栈中。如果完成了所有异步。函数调用将以完整的堆栈跟踪结束。速度的缺点(堆栈跟踪创建的成本很高)对于async来说并不重要。功能(请不要对正常控制流使用异常)。