book-loggly
v0.1.2
Published
loggly middleware for the book logging framework
Maintainers
Readme
book-loggly
loggly middleware for the book logging framework.
This middleware is shamelessly copy/modified from book-raven.
Install
npm install book book-loggly --saveUse
var log = require('book').default();
var logglyClient = require('loggly').createClient(myLogglyConfig);
var bookLogglyOptions = {
// A custom book-loggly option to ignore logs at ignore_levels and above
// 0: panic, 1: error, 2: warning, 3: info, 4: debug (default), 5: trace
"ignore_levels": log.TRACE,
// An (optional) arbitrary object to add to the log event to notify where its coming from
"from": {
"instance-id": "123"
}
};
log.use(require('book-loggly')(logglyClient, bookLogglyOptions));
// Now just log as usual
log.warn("Hey there!")
log.info("Logging this object", {some: 'object'})
log.error(new Error("test error!"))Internals
book-loggly uses the loggly JSON capability to log objects. The general form of these objects is:
{
"isError": false,
"message": "message",
"level_code": 3,
"level": "warning",
"extra": {
"extra_parameters": "that were added by other middleware",
"object fields": "from objects passed into the log function"
},
"from": {
"static-information": "from options.from"
}
}uncaughtException
If there is an error sending the packet to loggly, an error will be thrown. To catch it, use uncaughtException. You can do anything here, but perhaps you want to exit.
process.on('uncaughtException', function(err) {
log.panic(err);
setTimeout(process.exit.bind(process, 1), 1500);
})License
See LICENSE file.
