【发布时间】:2016-08-09 07:05:44
【问题描述】:
这应该是一个微不足道的问题,但我似乎没有想到它。有没有什么简单的方法可以将我的所有console.log 输出重定向到一个文件? console.log 以一种很好的方式对提供的对象进行格式化,并且可以与不是普通的 JSON 对象的对象正确交互。
例如,如果我这样做
var myerr = new Error('There has been an error');
console.log(myerr);
我明白了
[Error: There has been an error.]
如果我只是这样做
process.stdout.write(JSON.stringify(myerr));
我明白了
{}
如果我这样做了
process.stdout.write(myerr.toString());
我明白了
Error: There has been an error
因此,如果我使用上述任何技巧循环其参数并将输出重定向到文件的函数覆盖我的console.log,则日志将不完全相同。
所以我想知道:console.log 在将对象输出到控制台之前如何处理它提供的对象?它只是在每个对象上调用.toString(),用[] 包装东西并将所有内容发送到process.stdout.write?还是它会进行其他类型的预处理?
【问题讨论】:
标签: node.js file console.log