@livy/logger
Version:
A Monolog-inspired logging library for Node.js
22 lines (21 loc) • 712 B
JavaScript
import { AsyncLogger } from './async-logger.mjs';
import { MixedLogger } from './mixed-logger.mjs';
import { SyncLogger } from './sync-logger.mjs';
/**
* Create a logger instance
*
* @param name The name of the logger
* @param options The options for the logger
*/
export function createLogger(name, { mode = 'mixed', ...options } = {}) {
switch (mode) {
case 'sync':
return new SyncLogger(name, options);
case 'async':
return new AsyncLogger(name, options);
case 'mixed':
return new MixedLogger(name, options);
default:
throw new Error(`Invalid logging mode "${mode}". Use one of "sync", "async" or "mixed".`);
}
}