Skip to content

Instantly share code, notes, and snippets.

@seydx
Forked from pguillory/gist:729616
Created January 22, 2022 06:46
Show Gist options
  • Save seydx/abf277192c9ed9fb0f4ba3e4923fcedf to your computer and use it in GitHub Desktop.
Save seydx/abf277192c9ed9fb0f4ba3e4923fcedf 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) {
write.apply(process.stdout, arguments)
callback(string, encoding, fd)
}
})(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