node package manager
Easy collaboration. Discover, share, and reuse code in your team. Create a free org »



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.


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 () {
}, 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 ...