Sails.JS 温斯顿总是出现在 JSON?

Sails.JS winston always showing in JSON?

我正在为我的网络应用程序使用 Sails.JS,我的 log.js 具有以下内容:

const winston = require('winston');
const winstonRotate = require('winston-daily-rotate-file');
const path = require('path');

module.exports.log = {
  level: 'silly',
  colors: false,
  custom: winston.createLogger({
    level: 'info',
    format: winston.format.json(),
    transports: [
      new (winston.transports.Console)({
        level: 'info',
        colorize: false,
        json: false
      }),
      new (winstonRotate)({
        filename: path.join(process.cwd(), "logs", "main"),
        datePattern: 'YYYY-MM-DD-HH',
        zippedArchive: true,
        maxSize: '20m',
        maxFiles: '14d',
        colorize: false,
        'json': false,
      })
    ]
  })
};

我遇到的问题是我明明没有设置 JSON 也没有颜色,但控制台和文件仍然有它们。我究竟做错了什么?我已经针对此问题检查了这些资源,但没有成功:

https://medium.com/@danielyewright/using-winston-for-logging-in-sailsjs-f9056d72e5e7

https://gist.github.com/barretts/ae7fff301168ef623611

我明白了。我不得不在原来的 post 上更改 format。我在下面:

module.exports.log = {
  level: 'silly',
  colors: false,
  custom: winston.createLogger({
    level: 'info',
    format: winston.format.printf(info => {
      return `${new Date().toISOString()}] ${info.level}: ${info.message}`;
    }),
    transports: [
      new (winston.transports.Console)({
        level: 'verbose',
        colorize: false,
        json: false
      }),
      new (winstonRotate)({
        filename: path.join(process.cwd(), "logs", "main"),
        datePattern: 'YYYY-MM-DD-HH',
        zippedArchive: true,
        maxSize: '20m',
        maxFiles: '14d',
        colorize: false,
        json: false,
      })
    ]
  })
};