Skip to content

Inspired from tj/blocked, but configurable with environment variables

Notifications You must be signed in to change notification settings

transcovo/chpr-blocked

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CircleCI codecov

chpr-blocked is a tiny utility to monitor event loop blocking, inspired from tj/blocked, but configurable with environment variables.

When the event loop is blocked for more than a set threshold (defaults to 100ms), a log is emitted (using the specified level) using chpr-logger, and metrics are sent (increment + timing).

There is a "warmup delay" (defaults to 2000ms), because it's ok to use a lot of CPU in at the statup of the node app (e.g. to require most of the app code).

Installation

Install the package.

npm i chpr-blocked --save

Then require the module in the entry point in your code (e.g. server.js, worker.js, etc...).

require('chpr-blocked').start();

Configuration

The configuration is done with environment variables.

Name Description Default
BLOCKED_DELAY The tolerated warmup time after requiring chpr-blocked, milliseconds 2000
BLOCKED_THRESHOLD The threshold above which a log/metric is emitted, once the warmup delay is over 100
BLOCKED_LOGGER_LEVEL The logger level to apply on a blocked process 'info'

About

Inspired from tj/blocked, but configurable with environment variables

Resources

Stars

Watchers

Forks

Packages

No packages published