Common Setup - nodeswork/logger GitHub Wiki

Setup Default Log

Include MongoDB as default logs support.


var winstonMongoDB = require('winston-mongodb');
var nwLogger       = require('@nodeswork/logger');

nwLogger.level     = process.env == 'production' ? 'warn' : 'info';
nwLogger.transports.push(
  nwLogger.transport(winston.transports.MongoDB, {
    db:         mongoose.connections[0].db,
    collection: 'logs',
  })
);

Setup Requests Log

Include Mongodb and daily rotation files as supports.

var dailyRotate    = require('winston-daily-rotate-file');

nwLogger.define('requestLogger', {
  level:        'info',
  transports: [
    nwLogger.transport(winston.transports.MongoDB, {
      db:         mongoose.connections[0].db,
      collection: 'logs.requests',
    }),
    nwLogger.transport(winston.transports.DailyRotateFile, {
      filename:     './requests.log',
      datePattern:  'yyyy-MM-dd.',
      json:         false,
      prepend:      true,
    }),
  ],
});