Как предотвратить сообщение высокого уровня, чтобы войти во все сообщения низкого уровня в Winston? - PullRequest
1 голос
/ 24 апреля 2019

Я новичок в использовании библиотеки winston, и у меня возникла проблема, заключающаяся в том, что, несмотря на использование другого транспорта для сообщения об ошибке, информации, предупреждении, я не могу записать сообщение об ошибке, информацию и предупреждение в отдельных файлах, как определено в коде.Он регистрирует сообщения более высокого уровня в каждом сообщении более низкого уровня, так же как он регистрирует сообщения об ошибках во всех файлах ошибок, информации, предупреждений и отладки.Поэтому, пожалуйста, помогите мне.

import { createLogger, format, transports } from 'winston'

//setup logger
const { combine, timestamp, json, colorize, simple } = format;
const logger = createLogger({
  level: 'info',
  format: combine(
    timestamp({
      format: 'YYYY-MM-DD HH:mm:ss'
    }),
    json(),
  ),
  defaultMeta: { service: 'user-service' },
  transports: [
    new transports.Console({
      format: combine(colorize(), simple())
    }),
    new transports.File({
      filename: 'logs/error.log',
      level: 'error'
    }),
    new transports.File({
      filename: 'logs/warn.log',
      level: 'warn'
    }),
    new transports.File({
      filename: 'logs/info.log',
      level: 'info'
    }),
    new transports.File({
      filename: 'logs/debug.log',
      level: 'debug'
  })
  ]
});

logger.error('This is an error test message');
logger.info('This is an info test message');
logger.debug('This is a debug test message');

...