winston-config-monitor

1.0.2 • Public • Published

winston-config-monitor pipeline status

Motivation

winston is designed to be a simple and universal logging library with support for multiple transports. winston-config is designed to configure winston via json files.

winston-config-monitor offers a file watcher over the config loader.

Usage

You do have to put the winston dependency into your package.json. winston-config-monitor will not work correctly without this dependency in your package.json.

winston-config-monitor can be used like described below:

  'use strict';

  var path                 = require('path');
  var winston              = require('winston');
  var winstonConfigMonitor = require('winston-config-monitor');

  var configFile     = path.join(process.cwd(), 'winston-options.json');
  var logOptions     = require(configFile);

  global.logger      = winstonConfigMonitor.getLogger();

  logger.exitOnError = true;

  // Clear all transport
  winstonConfigMonitor.clear();

  // Load dynamically all the logger options
  for (var transportName in logOptions.loggersOptions) {
    winstonConfigMonitor.add(winston.transports[transportName], configFile, 'loggersOptions.' + transportName);
  }

  module.exports = logger;

winston-options.json should be defines as below:

{
  "loggersOptions": {
    "Console": {
      "level"    : "debug",
      "colorize" : true
    },
    "File": {
      "timestamp" : true,
      "json"      : false,
      "filename"  : "logs/app.log",
      "maxFile"   : 5,
      "maxsize"   : 10485760,
      "level"     : "info"
    }
  }
}

Installation

Installing winston-config-monitor

  npm install winston-config-monitor --save

Run Tests

All of the winston tests are written with mocha/chai/spy.

  $ npm test

Changelog

1.0.0

  • Declare a new winston as suggested in winston documentation. (Allow to stream log directly)

0.1.1

0.1.0

  • First release

Package Sidebar

Install

npm i winston-config-monitor

Weekly Downloads

179

Version

1.0.2

License

MIT

Unpacked Size

9.15 kB

Total Files

5

Last publish

Collaborators

  • xsellier