0

log.js:

var winston = require('winston');

var logger = new (winston.Logger)({
  transports: [
    new (winston.transports.Console)({ json: false, timestamp: true }),
    new winston.transports.File({ filename: **Get from outside**, json: false })
  ],
});

module.exports = logger;

a.js, want to log to its own logfile

var logger = require('./log')('log_to_this_file'); <=== How can I pass a filename in?

logger.info('log to file');

b.js, also want to log to its own logfile

var logger = require('./log')('log_to_another_file'); <=== How can I pass a filename in?

logger.info('log to file');

I dont know how to write log.js to get filename from outside.

How can I that?

nfpyfzyf
  • 2,891
  • 6
  • 26
  • 30

1 Answers1

0

Can't you just add a new logger in b.js?

  var winston = require('winston');

  //
  // Configure the logger for `category1`
  //
  winston.loggers.add('category1', {
    console: {
      level: 'silly',
      colorize: 'true',
      label: 'category one'
    },
    file: {
      filename: '/path/to/some/file'
    }
  });
tuvokki
  • 720
  • 1
  • 10
  • 18