Socket
Socket
Sign inDemoInstall

winston-logzio

Package Overview
Dependencies
59
Maintainers
3
Versions
29
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    winston-logzio

A winston transport wrapper for logzio


Version published
Maintainers
3
Install size
8.63 MB
Created

Readme

Source

Build Status

winston-logzio

A Winston transport wrapper for Logz.io

Installation

npm install winston-logzio --save

Sample usage

var winston = require('winston');
var logzioWinstonTransport = require('winston-logzio');

var loggerOptions = {
    token: '__YOUR_API_TOKEN__',
    host: 'listener.logz.io', // either listener.logz.io for US accounts or listener-eu.logz.io for EU Accounts
    type: 'YourLogType'     // OPTIONAL (If none is set, it will be 'nodejs')
};
winston.add(logzioWinstonTransport, loggerOptions);

winston.log('info', 'winston logger configured with logzio transport');

Make sure you replace __YOUR_API_TOKEN__ with your own logz.io api token.

If you do not have a Logz.io account, you can sign up for a free trial here

Details

This winston plugin, basically just wraps our nodejs logzio shipper.
If you want to configure the nodejs logger, any parameters sent to winston when initializing the transport (what is held in the variable loggerOptions in the sample above) will be passed to the logzio nodejs logger itself.

Logs in my console

The winston logger by default sends all logs to the console.
You can easily disable this by adding this line to your code :

winston.remove(winston.transports.Console);

Logs UncaughtException before Node process exit

To enable logzio to log the last UncaughtException before Node exits,

  • you instantiate winston logger and injecting into it the winston-logzio transport as well as the exceptionHandlers
  • set your Node process to trap UncaughtException
var callback = function() {} ;
var winston = require('winston');
var winstonLogzIO = require( 'winston-logzio' );
var loggerOptions = {
    token: '__YOUR_API_TOKEN__'
};

var logzIOTransport = new (winstonLogzIO)(loggerOptions);
var logger = new(winston.Logger)({
  transports: [
    logzIOTransport
  ],
  exceptionHandlers: [
    logzIOTransport
  ],
  exitOnError: true    // set this to true
});

process.on('uncaughtException', function (err) {
  logger.error("UncaughtException processing: %s", err);
  logzIOTransport.flush( function(callback) {
    process.exit(1);
  });
});

Keywords

FAQs

Last updated on 30 May 2018

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc