chpr-blocked
v2.6.2
Published
Inspired from tj/blocked, but configurable with environment variables
Downloads
12
Readme
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'