npm

Need private packages and team management tools?Check out npm Orgs. »

log-process-errors

5.0.2 • Public • Published

Codecov Travis Node Gitter Twitter Medium

📰 Medium article.

Show some ❤️ to Node.js process errors.

Node.js prints process errors (uncaughtException, warning, unhandledRejection, rejectionHandled) on the console which is very useful. Unfortunately those errors:

log-process-errors fixes all those issues.

Without log-process-errors:

Screenshot before

With log-process-errors:

Screenshot after

Use cases

  • Proper logging of process errors in production.
  • Debugging of process errors in development.
  • Automated testing of process errors.

Demo

You can try this library:

Install

Production code (e.g. a server) can install this either as a production or development dependency:

npm install log-process-errors

However, libraries should install this as a development dependency:

npm install -D log-process-errors

This is because logging is modified globally and libraries users might not expect this side-effect. Also, this might lead to conflicts between libraries.

Usage

There are two ways to load this library. The first is to use the node -r CLI flag:

node -r log-process-errors/build/register ...

The second is:

const logProcessErrors = require('log-process-errors')
logProcessErrors(options)

logProcessErrors() should be called as early as possible in the code, before other require/import statements.

Options

options is an optional object with the following properties.

log

Type: function(error, level)

Customizes how process errors are logged.
Full documentation.

level

Type: object
Default: { warning: 'warn', multipleResolves: 'info', default: 'error' }

Which log level to use.
Full documentation.

exitOn

Type: string[]
Default: ['uncaughtException']

Which process errors should trigger process.exit(1).
Full documentation.

testing

Type: string
Value: 'ava', 'mocha', 'jasmine', 'tape' or 'node-tap'
Default: undefined

When running tests, makes them fail if there are any process errors.
Full documentation.

colors

Type: boolean
Default: true if the output is a terminal.

Colorizes messages.
Full documentation.

Support

If you found a bug or would like a new feature, don't hesitate to submit an issue on GitHub.

For other questions, feel free to chat with us on Gitter.

Everyone is welcome regardless of personal background. We enforce a Code of conduct in order to promote a positive and inclusive environment.

Contributing

This project was made with ❤️. The simplest way to give back is by starring and sharing it online.

If the documentation is unclear or has a typo, please click on the page's Edit button (pencil icon) and suggest a correction.

If you would like to help us fix a bug or add a new feature, please check our guidelines. Pull requests are welcome!

Thanks go to our wonderful contributors:

ehmicky
ehmicky

💻 🎨 🤔 📖
Steven Vachon
Steven Vachon

💬
Hongarc
Hongarc

📖 💻

install

npm i log-process-errors

Downloadsweekly downloads

1,029

version

5.0.2

license

Apache-2.0

homepage

git.io

repository

Gitgithub

last publish

collaborators

  • avatar
Report a vulnerability