Winston不会在日志文件中写入

时间:2018-12-19 22:39:28

标签: javascript node.js logging winston

Winston logger for NodeJS的简单问题,需要花费大量的时间才能解决:

const winston = require('winston');

exports.logger = winston.createLogger({
    transports: [
        new winston.transports.File({
            format: winston.format.json(),
            level: 'info',
            timestamp: true,
            maxsize: 512000, // ~ 5 MB
            maxFiles: 10,
            filename: '../logs/info.log'
        }),
        new winston.transports.Console({
            format: winston.format.simple(),
            level: 'info'
        })
    ]
});

有趣的是,它可以在文件夹中创建文件(如果存在),但是不能在文件夹中创建文件(WTF?)。

问题是,从不将任何信息保存到文件中。我尝试修改访问权限。没有。没有收到关于该问题的任何反馈。

我可能对文档太傻了,因为对此一无所知,但是许多人似乎都面临着同样的问题。

1 个答案:

答案 0 :(得分:0)

好吧,我刚刚发现了问题:根据从何处调用文件,路径的解释将有所不同。

诊断::我显示的块位于项目的根目录中,不是,但是我正在执行的主文件是(并且需要该代码块),并因此从根文件的角度解释了路径。

结果:我正在将日志写在项目目录之外。