Skip to content

Logger for Node.js, based on `bunyan` and saving logs to MongoDB

License

Notifications You must be signed in to change notification settings

abd2561024/bunyan-mongodb-logger

Repository files navigation

bunyan-mongodb-logger

Build Status npm version

Introduction

This logger allows you to save your logs to MongoDB, stdout or file. It based on a bunyan logger.

Usage

Logger options

Field Required Type Description
name Yes String Provided at Logger creation. You must specify a name for your logger when creating it.
stream Optional String Single stream name (mongodb, $stdout, file)
streams Optional [String] Stream names array (mongodb, $stdout, file)
level Optional String Level of logging (fatal, error, warn, info, debug and trace)
url Optional String Mongodb stream url (e.g. mongodb://localhost/logger-test)
collections Optional String Mongodb collection name (default: logs)
path Yes, with file stream String Output file path.

Using the module

'use strict';

const bunyanMongoDbLogger = require('bunyan-mongodb-logger');

const logger = bunyanMongoDbLogger({
  name: 'some-name',
  streams: ['stdout', 'mongodb'],
  url: 'mongodb://localhost/logger-test',
  level: process.env.LOG_LEVEL || config.logger.level
});

logger.error(new Error('some error'), 'some custom message');
logger.info('Some info');

Or you can create lib with logger as follow:

path-to-you-app/lib/logger.js

'use strict';

const logger = require('bunyan-mongodb-logger');

module.exports = logger({
  name: 'express-app',
  streams: ['stdout', 'mongodb'],
  url: 'mongodb://localhost/logger',
  level: 'info'
})

and then use logger in your code:

const logger = require('path-to-you-app/lib/logger');

logger.error(new Error('some error'), 'some custom message');
logger.info('Some info');

Tests

Just run:

npm test

About

Logger for Node.js, based on `bunyan` and saving logs to MongoDB

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •