bene-logger
v1.1.7
Published
Logger library for Chronos.
Keywords
Readme
BENE Logger
The BENE Logger is a library, which wraps winston with default
parameters to be sent to all log messages using the instance.
It also provides the console.time and console.timeEnd functionality
to the logger, so that your log messages contain durations.
Additionally, it allows you to log to Elasticsearch directly.
Log levels
The log levels follow the syslog standard as laid out in RFC5424, and
are as follows:
{ emerg: 0, alert: 1, crit: 2, error: 3, warning: 4, notice: 5, info: 6, debug: 7 }You can specify the logger to only log up to a certain log level, by
passing in level to the options. For example to only log emerg,
alert, crit, and error logs, pass in level: 'error'.
Example usage
A simple log message is shown below:
var BeneLogger = require('bene-logger');
var logger = new BeneLogger({ defaults: { foo: 'bar' } });
logger.info('entering the void', { boo: 'moo' });
// info: entering the void boo=moo, foo=barAnother example showing the usage of the setDefaults method:
var BeneLogger = require('bene-logger');
var logger = new BeneLogger({ defaults: {alpha: 'bravo'}});
logger.setDefaults({charlie: 'delta'});
logger.info('calling phonetic alphabet');
// info: calling phonetic alphabet charlie=deltaBelow is an example of a timed log message:
var BeneLogger = require('bene-logger');
var logger = new BeneLogger({ defaults: { process_id: 1337 } });
logger.time('db request');
// ... request here that takes 1234ms
logger.timeEnd('db request', { request_id: 42 });
// info: db request request_id=42, process_id=1337, duration=1234An Elasticsearch example is shown below:
var BeneLogger = require('bene-logger');
var logger = new BeneLogger({
defaults: { foo: 'bar' },
elasticsearch: {
indexPrefix: 'logs',
indexSuffixPattern: 'YYYY.MM.DD',
clientOpts: { host: 'http://localhost:9200' }
}
});
logger.info('entering the void', { boo: 'moo' });
// info: entering the void boo=moo, foo=barFor more options to pass into the elasticsearch property,
refer here.
