Морган логгер не пишет в файл

Я пытаюсь настроить рабочую среду журналирования в моем приложении express nodejs, используя morgan.

Я пытался сделать это, используя эту документацию https://github.com/expressjs/morgan

Мой код относительно регистрации выглядит так:

var express = require('express');
var path = require('path');
var logger = require('morgan');
var FileStreamRotator = require('file-stream-rotator');
var fs = require('fs');
var app = express();

// logging
if (app.get('env') !== 'development') {
  var logDirectory = path.join('/srv/iss', 'log');

  // ensure log directory exists
  fs.existsSync(logDirectory) || fs.mkdirSync(logDirectory);

  var accessLogStream = FileStreamRotator.getStream({
    date_format: 'YYYYMMDD',
    filename: path.join(logDirectory, 'access-%DATE%.log'),
    frequency: 'daily',
    verbose: false
  });

  // setup the logger
  app.use(logger('combined', {stream: accessLogStream}))
}
else {
  app.use(logger('dev'));
}

Когда я запускаю приложение в режиме разработки, все работает нормально, но в рабочем режиме создается файл журнала доступа, но сообщения журнала не отправляются в файл.

1 ответ

Та же проблема и только что решена. Просто потому, что read-me слишком стар для использования. попробуй это:

app.use({format:'default', stream: accessLogStream});
Другие вопросы по тегам