hapi
plugin for taking a process dump and cleaning up after an uncaught exception
Lead Maintainer: Colin Ihrig
When an uncaughtException
is encountered a heap dump will be output to the
plugin folder. A log file is also written containing the exception details.
After this is complete the process will exit with a failure code. Heap dumps can
also be taken at arbitrary times by sending a SIGUSR1
signal to the server
process.
The following example shows how to register and configure poop
. In this example,
an uncaught exception is thrown after poop
is registered. This will trigger a
heap dump and poop.log
file to be created.
'use strict';
var Path = require('path');
var Hapi = require('hapi');
var Poop = require('poop');
var server = new Hapi.Server();
server.register({
register: Poop,
options: {
logPath: Path.join(__dirname, 'poop.log')
}
}, function () {
throw new Error('uncaught');
});
The following options are available when configuring poop
.
The directory to place heap dump files. Defaults to the process current working directory.
The file path to log any uncaught exception errors. Defaults to poop.log
in
the process current working directory.
Options passed to the write stream of the log file. Uses Node's defaults:
{
flags: 'w',
encoding: null,
fd: null,
mode: 0666
}