1.0.5 • Published 7 years ago
arupex-logger v1.0.5
arupex-logger
Generic logger that operates in both a JSON format and a Easy to read Dev format but is also extendable

Description:
This is the logging framework that npm arupex usesMain feature
process.NODE_ENV === 'production' || 'prod'Uses a prod formatter which formats logs in JSON so splunk and other aggregators can read your logs easily
IE:
{ "timestamp":"2018-03-19T21:18:54.023+00:00", "logger_name":"Prod Logger", "level":"info", "log_line":" at traceRoute (/Users/daniel.irwin/git/arupex-logger/Logger.js:21:20)", "message":"quick test" }
Otherwise a dev formatter is used to keep your console clean, but also give you timestamps, and tracing information
IE:
19:37:21 Dev Logger info at traceRoute | Logger.js:21:20 quick test
LOG Factory
let LoggerFactory = require('arupex-logger').LoggerFactory;
let factory = new LoggerFactory(opts);
let console = factory.getLogger('my-logger', overridingOpts);Logger
let Logger = require('arupex-logger').Logger;
let console = new Logger('my-logger', opts);
default opts = {
level : 'info',
outStream : process.stdout,
errStream : process.stdError,
messageKey : 'message',
slicer : DEFAULT_SLICER_FUNCTION,
devFormat : DEFAULT_DEV_FORMAT,
prodFormat : DEFAULT_PROD_FORMAT
}; // optionalLog Types:
DEBUG:
console.debug();//debug level log INFO:
console.log();//info level log
console.info();//info level log
console.pretty();//info level log that pretties json
console.box();//info level log that boxes dataERROR:
console.error();//error level logVERBOSE:
console.verbose();//verbose level logSILLY:
console.silly();//silly level logCRITICAL:
console.critical();//critical level logCRUCIAL:
console.crucial();//crucial level log that ends the current process! process.exit(1)