【问题标题】:Node's console.log() outputs an object's info. How do I output it to a file?Node 的 console.log() 输出一个对象的信息。如何将其输出到文件?
【发布时间】:2012-09-19 02:55:38
【问题描述】:

我喜欢console.log(object) 以json 格式输出object 的结构。如何让我的应用将相同的内容输出到文件中?

【问题讨论】:

    标签: node.js


    【解决方案1】:

    正如 Golo 所说,Node 中没有内置任何内容,但您可以轻松编写自己的(或使用 Winston):)

    fs = require('fs');
    
    logToFile = function(fileName, objectToLog) {
    
      jsonText = JSON.stringify(objectToLog, null, '\t');
      fs.writeFileSync(fileName, jsonText, 'utf8');      
    
    }
    
    sampleData = { name: 'Batman', city: 'Gotham' };
    logToFile('log.txt', sampleData);
    

    【讨论】:

      【解决方案2】:

      Node.js 中的文件日志记录没有开箱即用的支持。

      基本上,您有两种选择:

      1. 您可以使用操作系统的机制重定向流,将 Node.js 进程的任何输出重定向到文件。

      2. 使用专用的日志库,例如Winston

      我会选择第二个选项,因为它更灵活,您迟早会需要它,至少在您的项目稍微大一点的情况下。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-08-04
        • 2016-08-09
        • 1970-01-01
        • 2015-08-07
        • 2022-01-13
        • 2016-05-18
        • 1970-01-01
        • 2022-10-24
        相关资源
        最近更新 更多