Уинстон только пишет в консоль, но ничего не записывает в мой лог-файл

Я использую NodeJS/React/Express/ Winston в сочетании. Вот версии:

react & react-router-dom: 15.6.1

express: 4.15.3

node: 8.4.0

npm: 5.3.0

winston: 2.3.1

express-winston: 2.4.0

Я создаю свой логгер как таковой:

var logger = new (winston.Logger) ({
  transports: [
    new(winston.transports.File) ({
      filename: 'log.txt',
      handleExceptions: true,
      prettyPrint: true
    })
  ], exitOnError: false
});

Я создал log.txt, поэтому каталог и файл существуют.

На этом этапе я могу перейти на свой сервер, и все отображается успешно, как раньше.

Если я добавлю какие-либо звонки в мой логгер, например:

logger.info("Hello World!");

мое приложение больше не рендерится, однако я не вижу никаких ошибок в консоли.

Я также пробовал это с Express-Winston для регистрации запросов промежуточного программного обеспечения, что имеет тот же результат: регистрация работает в консоли для Express-Winson, но не тогда, когда я хочу записать во внешний файл.

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

****** ОБНОВЛЕНИЕ ****** Я обнаружил, что если я использую:

try {
    logger.info("hello");
}
catch(e) { alert(e); }

Я получаю это сообщение: TypeError: fs.stat не является функцией. Я не могу найти в Интернете ничего, что могло бы это исправить. пожалуйста, порекомендуйте

0 ответов

Другие вопросы по тегам