rkive

1.0.2 • Public • Published

Overview

rkive is a simple logging utility for MongoDB

Installation

$ npm install rkive

Usage

Require rkive

var rkive = require('rkive');

Pass in a Mongoose instance

var mongoose = require('mongoose')
mongoose.connect('mongodb://localhost/test');

var logger = new rkive(mongoose);

Log something by specifying a code and a message

logger.log(100, 'wow log');

Log objects

logger.log(100, 'log object', { hi: 'bye' });
logger.log('without the code', {})
logger.log({ put: 'anything here' })

Create an extended error object containing additional details

function(err, res) {
  if (err) throw logger.error(200, 'some error', {id: 123 }) 
}

This error can then be logged or handled in a manner of your choosing

.catch(function(e){
  logger.log(e)
})

Call the logging/error functions directly

var log = logger.makeLog()
log(500, 'bad error', { id: 123 })

var error = logger.makeError()
throw error(501, 'catastrophic error', { wow: 'error' })

Set logging criteria. If a number is passed as the last argument, it will be evaluated to determine whether to log or not

// log everything under severity level of 4
logger.setCritera(function(n){
  return n < 4 && true || false
});

Then specify the level when logging

log(500, 'this will be logged', { stuff: 123 }, 2);
log(500, 'but this will not be', { more: 'stuff' }, 5);
error(500, 'levels work for errors too', 3)

Other options:

{
  verbose: false, // for debugging purposes, will print module-specific messages
  console: true, // prints logs to the console, default: false
  colName: 'logs' // name of the collection that logs will be stored in
}

Log analysis

Coming soon...

License

MIT

Readme

Keywords

Package Sidebar

Install

npm i rkive

Weekly Downloads

0

Version

1.0.2

License

MIT

Last publish

Collaborators

  • yzarubin