Package Exports
- good
- good/lib/monitor
- good/lib/utils
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (good) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
hapi process monitoring
Lead Maintainer: Adam Bretz
good is a hapi plugin to monitor and report on a variety of hapi server events as well as ops information from the host machine. It listens for events emitted by hapi server instances and pushes standardized events to a collection of streams.
Example Usage
const Hapi = require('hapi');
const server = new Hapi.Server();
server.connection();
const options = {
ops: {
interval: 1000
},
reporters: {
console: [{
module: 'good-squeeze',
name: 'Squeeze',
args: [{ log: '*', response: '*' }]
}, {
module: 'good-console'
}, 'stdout'],
file: [{
module: 'good-squeeze',
name: 'Squeeze',
args: [{ ops: '*' }]
}, {
module: 'good-squeeze',
name: 'SafeJson'
}, {
module: 'good-file',
args: ['./test/fixtures/awesome_log']
}],
http: [{
module: 'good-squeeze',
name: 'Squeeze',
args: [{ error: '*' }]
}, {
module: 'good-http',
args: ['http://prod.logs:3000', {
wreck: {
headers: { 'x-api-key': 12345 }
}
}]
}]
}
};
server.register({
register: require('good'),
options: options
}, (err) => {
if (err) {
console.error(err);
} else {
server.start(() => {
console.info('Server started at ' + server.info.uri);
});
}
});
This example does the following:
- Sets up the
console
reporter reporter listening for 'response' and 'log' events and writes them toprocess.stdout
. - Sets up the
file
reporter to listen for 'ops' events and logs them to./test/fixtures/awesome_log
. - Sets up the
http
reporter to listen for error events and POSTs them tohttp://prod.logs:3000
with additional settings to passed intoWreck
NOTE: Ensure calling server.connection
prior to registering Good
. request
and response
event listeners are only registered on connections that exist on server
at the time Good
is registered.
Existing streams
The following streams are maintained by the hapi community and are known to work with good. Any transform or write stream can work with good, these are just a few inside the hapijs organization.
API
See the API Reference.