UNPKG

@kareemaly/researcher

Version:
28 lines (27 loc) 1.15 kB
"use strict"; 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);