bunyan-promise

Bunyan formatted tracking of outstanding promises, progress, errors, and resolution times.

npm install bunyan-promise
31 downloads in the last day
199 downloads in the last week
923 downloads in the last month

Bunyan-Promise

Bunyan-Promise consumes promises and outputs bunyan logs showing their progress, their resolution or rejection, and makes state dumps showing all promises that have not settled.

How?

Bunyan-Promise can consume any type of promises, but for the sake of this example we'll use one from Kriskowal's Q Library.

var q = require('q');
var BunyanPromiseLogger = require('bunyan-promise');
var logger = new BunyanPromiseLogger({
  name: 'test-logger'
});
var defer = q.defer();
logger.trace(defer.promise, 'arbitrary promise name for logging');

// sometime in the future resolve that promise
setTimeout(function () {
  defer.resolve();
}, 10000);

Example output

This is pretty printed by piping the output through the bunyan cli.

node app.js | bunyan -o short

Alternatively you can use the bunyan grunt task if you're using grunt

npm install --save-dev grunt-bunyan
grunt bunyan task1 task2 ...

npm loves you