1. intercept-stdout
Hooking Node.js stdout
intercept-stdout
Package: intercept-stdout
Created by: sfarthin
Last modified: Sun, 19 Jun 2022 01:44:00 GMT
Version: 0.1.2
License: MIT
Downloads: 108,634
Repository: https://github.com/sfarthin/intercept-stdout

Install

npm install intercept-stdout
yarn add intercept-stdout

Node.js Intercept stdout

intercept-stdout captures or modifies stdout and/or stderr.

Based on this gist

Capture

 var intercept = require("intercept-stdout"),
	captured_text = "";

var unhook_intercept = intercept(function(txt) {
	captured_text += txt;
});

console.log("This text is being captured");

// Let's stop capturing stdout.
unhook_intercept();

console.log("This text is not being captured");

Modify

 var intercept = require("intercept-stdout");

var unhook_intercept = intercept(function(txt) {
	return txt.replace( /this/i , 'that' );
});

console.log("This text is being modified");
// -> that text is being modified

Test

npm install
npm test

Separating Error Text

Starting in Version 0.1.2, you may now specify two interceptor callbacks. If a second interceptor callback is specified, the second callback will be invoked for stderr output.

Errors and Warnings

Versions > 0.1.1 hook both stdout and stderr. This change enables capturing of console.log, console.info, console.warn, and console.error. This change may break pre-existing interceptors if your interceptor expected output to be a full line of text.

About Colorization

Popular modules such as mocha and winston may colorize output by inserting ANSI escape codes into the output stream. Both mocha and winston make multiple calls to the output streams while colorizing a line -- in order to be robust, your code should anticipate and deal with this.

RELATED POST

10 Must-Know Windows Shortcuts That Will Save You Time

10 Must-Know Windows Shortcuts That Will Save You Time

Arrays vs Linked Lists: Which is Better for Memory Management in Data Structures?

Arrays vs Linked Lists: Which is Better for Memory Management in Data Structures?

Navigating AWS Networking: Essential Hacks for Smooth Operation

Navigating AWS Networking: Essential Hacks for Smooth Operation

Achieving Stunning Visuals with Unity's Global Illumination

Achieving Stunning Visuals with Unity's Global Illumination

Nim's Hidden Gems: Lesser-known Features for Writing Efficient Code

Nim's Hidden Gems: Lesser-known Features for Writing Efficient Code