UNPKG

qw-utils

Version:

qw Utils package

45 lines (44 loc) 1.25 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.loggerUtils = void 0; /** * 日志工具类,统一管理日志 */ class loggerUtils { constructor(logLevel = 'info') { this.enabled = true; this.logLevel = logLevel; } disable() { this.enabled = false; } enable() { this.enabled = true; } info(message, ...args) { if (this.enabled && (this.logLevel === 'debug' || this.logLevel === 'info')) { this.log('INFO', message, args); } } warn(message, ...args) { if (this.enabled && (this.logLevel === 'debug' || this.logLevel === 'info' || this.logLevel === 'warn')) { this.log('WARN', message, args); } } error(error, ...args) { if (this.enabled && this.logLevel !== 'silent') { const message = error ? error.message : 'Unknown error occurred'; this.log('ERROR', message, args); } } log(level, message, args) { const logLine = `[${level}] ${message}`; if (args.length > 0) { console.log(logLine, args); } else { console.log(logLine); } } } exports.loggerUtils = loggerUtils;