UNPKG

@livy/logger

Version:

A Monolog-inspired logging library for Node.js

26 lines (25 loc) 894 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createLogger = void 0; const async_logger_1 = require("./async-logger"); const mixed_logger_1 = require("./mixed-logger"); const sync_logger_1 = require("./sync-logger"); /** * Create a logger instance * * @param name The name of the logger * @param options The options for the logger */ function createLogger(name, { mode = 'mixed', ...options } = {}) { switch (mode) { case 'sync': return new sync_logger_1.SyncLogger(name, options); case 'async': return new async_logger_1.AsyncLogger(name, options); case 'mixed': return new mixed_logger_1.MixedLogger(name, options); default: throw new Error(`Invalid logging mode "${mode}". Use one of "sync", "async" or "mixed".`); } } exports.createLogger = createLogger;