console.log进入不同的终端窗口-node.js

console.log进入不同的终端窗口-node.js,node.js,Node.js,在我们的nodejs项目中,对于每个HTTP请求,在一个默认控制台窗口中记录了几页调试信息。很难找到我记录的信息 我无权在这个项目中编辑代码的其他部分。我想创建一个新的终端窗口,并且只将我的调试信息记录到此窗口 问题: 有可能一起做吗?如果没有,是否启动一个新的终端窗口并在那里记录我的信息?我认为nodejs可以控制本地文件系统并调用操作系统函数。一定有办法 谢谢 使用不同的日志。支持成吨的日志格式以及多个日志通道。将调试信息发送到文件,而不是发送到控制台。您可以稍后阅读,也可以实时阅读。您可以

在我们的nodejs项目中,对于每个HTTP请求,在一个默认控制台窗口中记录了几页调试信息。很难找到我记录的信息

我无权在这个项目中编辑代码的其他部分。我想创建一个新的终端窗口,并且只将我的调试信息记录到此窗口

问题: 有可能一起做吗?如果没有,是否启动一个新的终端窗口并在那里记录我的信息?我认为nodejs可以控制本地文件系统并调用操作系统函数。一定有办法


谢谢

使用不同的日志。支持成吨的日志格式以及多个日志通道。将调试信息发送到文件,而不是发送到控制台。您可以稍后阅读,也可以实时阅读。

您可以创建自定义的
控制台
对象:

var Console = require('console').Console;
var fs = require('fs')

var stream = fs.createWriteStream('/tmp/mylog');

var console = new Console(stream, stream);

var i = 0;

(function log () {
  console.log(i++);
  setTimeout(log, 1000);
} ())

然后只需执行
tail-f/tmp/mylog

console.log即可登录到stdout或stderr。我们可以为这个函数提供另一个标准输出吗?写入文件是我当前的解决方案。但是我可以启动一个新的终端窗口吗?然后在新窗口中记录信息?温斯顿看起来是个很好的日志工具。你知道它是否允许我登录两个不同的终端吗?没有任何东西允许我直接登录。您的进程只有一个std输出流,并且它与一个终端实例相关联。您需要在新的终端窗口中执行一些其他程序才能访问它:例如
tail