Home

Awesome

sails-hook-winston

Build Status Coverage Status Dependency status Dev Dependencies Status NPM Status Gittip

Integrates winston logging system with your Sails application.

Install

Note: This library requires sails >= 0.11.0

npm install sails-hook-winston

Usage

winston is one of the most powerful logging libraries for NodeJS. You can unlock the features of winston in your Sails application when you use this hook.

All available winston transports can be configured through the transports option. The console transport is included by default (by default based on the Sails log options).

API

This library extend config/log and use the winston API for setup the Transport. This is an example of configuration:

var path = require('path');
var pkgJSON = require(path.resolve('package.json'));

module.exports.log = {

  // This options are for Console transport that is used by default
  level: 'silly', // you are familiar with this value, right?
  timestamp: true, // if you want to output the timestamp in the console transport

  // Transports
  // more information: https://github.com/winstonjs/winston/blob/master/docs/transports.md
  transports: [
    {
      module: require('winston-daily-rotate-file'),
      config: {
        dirname: path.resolve('logs'),
        datePattern: '.yyyy-MM-dd.log',
        filename: pkgJSON.name,
        prettyPrint: true,
        timestamp: true,
        level: 'silly'
      }
    },
    {
      module: require('winston-logio').Logio,
      config: {
        port: 28777,
        node_name: pkgJSON.name,
        host: '127.0.0.1'
      }
    }
  ]
};

Note how the options are different for each transport. For example, you can use info level in console but store silly level in DailyFileRotate.

License

MIT © Kiko Beats