finis

Node.js program finisher - run your last callback with `exit code` and `signal name` as arguments

Usage no npm install needed!

<script type="module">
  import finis from 'https://cdn.skypack.dev/finis';
</script>

README

FINIS

Finis

Run your callback before node exit, pass exit code and signal name as arguments

INSTALLATION

npm install finis --save

USAGE

finis() installs a callback function which will be run just before the node process exits.

The callback function will be called when:

  1. the process exits normally
  2. the user presses Ctrl+C
  3. an exception is uncaught

EXAMPLE

JavaScript

const finis = require('finis')

finis((code, signal, error) => {
  console.log(`finis(${code}, ${signal}, ${error})`)
})

TypeScript

import finis from 'finis'

finis((code: number, signal: 'exit'|'SIGINT'|'SIGTERM'|'uncaughtException', error?: Error) => {
  console.log(`finis(${code}, ${signal}, ${error})`)
})

You may call finis() multiple times to install multiple callback functions.

CHANGELOG

v0.4 Nov 2017

  1. Do not call process.exit by default
  2. Add support to SIGTERM
  3. Add support to TypeScript

v0.1 Dev 2016

This module is inspired by @jtlapp/node-cleanup, which is borrowed and modified from CanyonCasa's answer to a stackoverflow question. I found the code necessary for all my node projects. See the stackoverflow answer for more examples of use.

MAINTAINER

Huan LI <zixia@zixia.net> (http://linkedin.com/in/zixia)

profile for zixia at Stack Overflow, Q&A for professional and enthusiast programmers

COPYRIGHT & LICENSE

  • Code & Docs © 2016-2017 Huan LI <zixia@zixia.net>
  • Code released under the Apache-2.0 License
  • Docs released under Creative Commons