@RokuCommunity/logger
March 16, 2023 ยท View on GitHub
A node.js logger library for use in the RokuCommunity projects.
Installation
npm
npm install @rokucommunity/logger
Usage
//import the logger
const logger = require('logger');
logger.logLevel = 'trace';
logger.error('Critical failure');
logger.warn('Something might be wrong');
logger.log('Normal message');
logger.info('Might be interesting');
logger.debug('Probably not interesting');
logger.trace('Definitely not interesting');
Output:

Advanced Usage
Log inheritance and Prefixing
A Logger instance can inherit settings from a parent, only needing to provide settings for the values it wants to override. All loggers inherit from the base Logger that is the default export from this module.
Consider the following example:
const logger = require('./dist');
logger.log('Hello from logger');
const childLogger = logger.createLogger({prefix: '[Child]'});
childLogger.log('Hello from childLogger');
const grandchildLogger = childLogger.createLogger({prefix: '[Grandchild]'});
grandchildLogger.log('Hello from grandchildLogger');
Output:
[14:38:30.429][LOG] Hello from logger
[14:38:30.432][LOG] [Child] Hello from childLogger
[14:38:30.432][LOG] [Child][Grandchild] Hello from grandchildLogger