Skip to content

Instantly share code, notes, and snippets.

@totherik
Forked from pguillory/gist:729616
Created August 9, 2012 15:41
Show Gist options
  • Save totherik/3305270 to your computer and use it in GitHub Desktop.
Save totherik/3305270 to your computer and use it in GitHub Desktop.
Hooking into Node.js stdout
var util = require('util')
function hook_stdout(callback) {
var old_write = process.stdout.write
process.stdout.write = (function(write) {
return function(string, encoding, fd) {
process.nextTick(function() {
callback(string, encoding, fd)
});
return write.apply(process.stdout, arguments)
}
})(process.stdout.write)
return function() {
process.stdout.write = old_write
}
}
console.log('a')
console.log('b')
var unhook = hook_stdout(function(string, encoding, fd) {
util.debug('stdout: ' + util.inspect(string))
})
console.log('c')
console.log('d')
unhook()
console.log('e')
console.log('f')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment