0.0.6 • Published 9 months ago

@omgaz/winston-bugsnag-logger v0.0.6

Weekly downloads
-
License
MIT
Repository
github
Last release
9 months ago

This package is deprecated and a better alternative has been created, please use Cabin: https://cabinjs.com

This fork is a stop gap until such time as I can migrate to Pino / CabinJS

winston-bugsnag-logger

node bugsnag winston license

The maintained and well-documented Bugsnag transport for the winston logger.

Full API documentation is available at: https://docs.bugsnag.com/api/error-reporting/

Index

Install

npm install --save winston winston-bugsnag-logger

Usage

You can configure winston-bugsnag-logger in two different ways.

With new winston.Logger:

const winston = require("winston");
const Bugsnag = require("winston-bugsnag-logger");

const options = {
  apiKey: "*******",
  level: "info",
};

const logger = new winston.Logger({
  transports: [new Bugsnag(options)],
});

Or with winston's add method:

const winston = require("winston");
const Bugsnag = require("winston-bugsnag-logger");

const logger = new winston.Logger();

logger.add(Bugsnag, options);

See Options below for custom configuration.

Options (options)

Per options variable above, here are the default options provided:

Default options:

  • apiKey (String) - your Bugsnag API key (defaults to process.env.BUGSNAG_API_KEY)
  • config (Object) - a Bugsnag configuration object
  • bugsnag (Object) - an optional instance of bugsnag that is already configured via bugsnag.register (if provided this will be used instead of the config option)

Transport related options:

  • name (String) - transport's name (defaults to bugsnag)
  • silent (Boolean) - suppress logging (defaults to false)
  • level (String) - transport's level of messages to log (defaults to info)
  • levelsMap (Object) - log level mapping to Bugsnag (see Log Level Mapping below)

Log Level Mapping

Winston logging levels are mapped by default to Bugsnag's acceptable levels.

These defaults are set as `options.levelsMap' and are:

{
  silly: 'info',
  verbose: 'info',
  info: 'info',
  debug: 'debug',
  warn: 'warning',
  error: 'error'
}

You can customize how log levels are mapped using the levelsMap option:

new Bugsnag({
  levelsMap: {
    verbose: "info",
  },
});

If no log level mapping was found for the given level passed, then it will not log anything.

License

MIT License

0.0.5

9 months ago

0.0.4

9 months ago

0.0.6

9 months ago

0.0.3

10 months ago

0.0.2

11 months ago

0.0.1

11 months ago