@microservice/koa-terminator

3.0.0 • Public • Published

microservice / terminator

shuts down the server if an error occurs. tries to be nice about it.

usage

first, register the middleware

const terminator = require('@microservice/koa-terminator');

app.use(require('koa-error')); // catch errors and display error pages like normal
app.use(terminator()); // this will signal termination on uncaught errors
// everything else comes after

then, listen for a terminate event

const server = app.listen();

process.on('terminate', () => {
  // the process will exit once existing connections are done
  server.close();
  // you could use a timeout here to force shutdown as well.
  const timer = setTimeout(() => {
    process.exit(1);
  }, 5000);
  timer.unref();
})

Readme

Keywords

none

Package Sidebar

Install

npm i @microservice/koa-terminator

Weekly Downloads

1

Version

3.0.0

License

MIT

Last publish

Collaborators

  • microservice-admin