如何在Windows上刷新console.log输出
我有一个Node.js程序,它有一个很长的进程和一些内部日志记录:如何在Windows上刷新console.log输出,windows,node.js,logging,console,Windows,Node.js,Logging,Console,我有一个Node.js程序,它有一个很长的进程和一些内部日志记录: console.log(msg) 当我在Windows Node.js上运行时,消息不会实时显示-我在同一时间收到大量消息 当我使用“console.warn”而不是“console.log”时,消息显示得更早,但仍然不是实时的 有没有办法告诉Node.js在每条日志消息之后自动刷新控制台缓冲区?事实证明,console.log在Windows中是异步的。在linux/unix中,它是阻塞的,因此它不需要缓冲和刷新,将控制台.
console.log(msg)
当我在Windows Node.js上运行时,消息不会实时显示-我在同一时间收到大量消息
当我使用“console.warn”而不是“console.log”时,消息显示得更早,但仍然不是实时的
有没有办法告诉Node.js在每条日志消息之后自动刷新控制台缓冲区?事实证明,
console.log
在Windows中是异步的。在linux/unix中,它是阻塞的,因此它不需要缓冲和刷新,将控制台.logs
放在事件队列上
一种选择可能是
编辑:好的,这不是一个解决方案。其他人可能有更好的解决方案,但您可以使用一个更全面的日志库,或者使用更多信息填充console.log,告诉您日志发生的时间和地点,以便您可以将它们关联起来。在Linux下,这也是一个问题,未经处理的异常可能导致程序在所有输出可见之前终止,因此您看不到最近调试的
console.log()
语句中的内容。