@kareemaly/researcher
Version:
CLI tool for web research
28 lines (27 loc) • 1.15 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.createLogger = createLogger;
const debug_1 = __importDefault(require("debug"));
const APP_NAMESPACE = "researcher";
function createLogger(namespace) {
const fullNamespace = `${APP_NAMESPACE}:${namespace}`;
const mainLogger = (0, debug_1.default)(fullNamespace);
const errorLogger = (0, debug_1.default)(`${fullNamespace}:error`);
const warnLogger = (0, debug_1.default)(`${fullNamespace}:warn`);
// Configure error and warning loggers to write to stderr
errorLogger.log = console.error.bind(console);
warnLogger.log = console.warn.bind(console);
// Extend the main logger with error and warn loggers
const logger = mainLogger;
logger.error = errorLogger;
logger.warn = warnLogger;
return logger;
}
// Example usage:
// const log = createLogger('my-module');
// log('Something happened: %O', data);
// log.error('An error occurred: %O', error);
// log.warn('Warning: %s', message);