Skip to content

someimportantcompany/koa-graceful-shutdown

Repository files navigation

koa-graceful-shutdown

NPM CI Coverage

Ensure that during shutdown Koa returns correctly with a HTTP 503 Service Unavailable. Based off express-graceful-shutdown with the middleware adapted for Koa.

const http = require('http');
const Koa = require('koa');
const shutdown = require('koa-graceful-shutdown');

const app = new Koa();
const server = http.createServer(app.callback());

app.use(shutdown(server));

app.use(ctx => {
  ctx.status = 200;
  ctx.body = { foo: 'bar' };
});

server.listen(0, 'localhost', () => {
  const { address, port } = server.address();
  console.log('Listening on http://%s:%d', address, port);
});

Install

npm install koa-graceful-shutdown --save

Arguments

shutdown(server, opts) => function(ctx, next)
Argument Description
server http.server
opts Optional options
opts.logger A logger that provides info, warn and error methods, defaults to console
opts.forceTimeout Milliseconds to wait for server.close() to finish, defaults to 30000

Notes

About

Ensure that during shutdown Koa returns correctly with a 503

Topics

Resources

Stars

Watchers

Forks