Giter Site home page Giter Site logo

bunyan-hub-logger's Introduction

bunyan-hub-logger

This module is a high level module to be used with bunyan-hub to play as a drop in replacement to tj's debug module and serve as a logging module for your iojs/node.js project.

install

You should have bunyan-hub installed globally first, then start it.

npm i -g bunyan-hub
bunyanhub start

then install bunyan-hub-logger in you iojs project (or node.js project, not tested) locally

npm i --save bunyan-hub-logger

usage

logger

var logger = require('bunyan-hub-logger');

var log = logger('web')
// log object here is a bunyan logger with the name 'web'
log.trace('log trace')
log.debug({req: req}, 'debug http request');

/* logger options
logger(object opts) or logger(string opts)
logger({
    name: 'api', // currently debugging/logging module of your app/project
    app: 'project-a', // your app/project name
    serializers: {}, // bunyan serializers, defaults to a modified bunyan.stdSerializers which append a `uuid.v4()` to req.req_id and res.req.req_id for req and res
    streams: [], // default is using bunyan-pub-stream to send logs to local bunyan-hub, you can add more bunyan writable stream here.
});
if opts object is string it will be convert to { name: opts }
*/

You need specified app name in app and module name in name since bunyan-hub is serving as a centralized log aggregator, it will recieve logs from multiple running apps. name is like namespace in tj's debug module, and different app may use the same module name for the same or different module (e.g. request namespace in frontend app and backend app...)

debug (from tj) replacement

require('bunyan-hub-logger/replaceDebug')(appname);

for example you drop a line require('bunyan-hub-logger/replaceDebug')('web-a'); in your web-a app, and it using superagent as http requesting module, then you will see logging records {"name": "superagent", "app": "web-a", ... } in bunyan-web or bunyan-sub, since superagent using debug module under namespace "superagent"

console replacement

require('bunyan-hub-logger/replaceDebug')(appname);

like replaceDebug, this will replace console object to send log to bunyan-hub.

license

MIT

bunyan-hub-logger's People

Contributors

undozen avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.