##Node Logger Logger package supporting log levels, log scopes, request-id's stored by als. Customizable log outputs and formatters. Note it's in early form, so API changes might come in further.
##Usage examples ###Initializaton for logging in file
const logger = require("@tdsoft/logger").create("log/namespace");
logger.error("Error level message");
logger.warn("Warn level message");
logger.info("Info level message"); logger.log("Info level message");
logger.debug("Debug level message");
logger.silly("Silly level message");
const {LogLook} = require("@tdsoft/logger");
logger.silly(new LogLook().blue("Singing logs blues")); // Hopeful blue message (WiP)
###Output initialization
const Logger = require("@tdsoft/logger");
new Logger.outputs.StdOut({filters: [new Logger.LogFilter("*", Logger.LOG_LVL.WARN)]}); // will log only WARNS & ERRORS from all (*) namespaces
#####Note on using socketio-logger-server as output
const socketIOLogOut = new Logger.outputs.SocketIO({socketIOServerUrl: "http://localhost:3002/", filters: [new Logger.LogFilter("scope", Logger.LOG_LVL.INFO)]});
###Stylizing logs - LogLook chainable class
const look = new LogLook().italic.blue("Hello").default(" ").bold.bgYellowBright.black("World!").default("Seems fine");
console.log(look.looks);
Then looks array contains all of the stylized context which furter can be used with any of the ouptut formatters if proper processing was prepared:
[ { style: 'italic', color: 'blue', txt: 'Hello', start: 0, end: 5 },
{ style: null,
color: null,
bgColor: null,
txt: ' ',
start: 5,
end: 6 },
{ style: 'bold',
bgColor: 'yellowBright',
color: 'black',
txt: 'World!',
start: 6,
end: 12 },
{ style: null,
color: null,
bgColor: null,
txt: 'Seems fine',
start: 12,
end: 22 } ]
(There's already one for console (chalk), html WiP) ###Using formatters ...
###Custom log output - Implementing LoggerOutput interface ...