我有 logger.js 文件,我从中导入记录器。
然后我做logger.info(Console.trace());
Console.Trace 已经可以工作,但我需要记录它 - 但是,这会导致错误“void 类型的参数不能分配给类型“object”
我在这里做错了什么?
最佳答案
Console.trace()
将堆栈跟踪输出到 stderr
,因此您无法准确捕获它。通常,获取堆栈跟踪的正确方法是使用 new Error()
对象获取它。
let err = new Error("Error Message")
logger.log("error", "Exception Dump", err)
在上面的示例中,这里发生了一些事情。当我们调用 new Error() 时,它会为我们捕获堆栈跟踪。然后在记录器调用中,我们使用 .log()
方法。这允许我们声明日志级别,提供消息,然后在生成的日志条目中由 util.inspect() 处理的对象。
关于node.js - Winston-记录堆栈错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51904090/