UNPKG

qw-utils

Version:

qw Utils package

44 lines (43 loc) 1.32 kB
"use strict"; /** * bunyan日志库工具类,避免使用console.log,以减少日志操作对系统性能的影响 */ Object.defineProperty(exports, "__esModule", { value: true }); class Logger { constructor(logLevel = 2 /* LogLevel.INFO */) { this.logLevel = logLevel; } info(message, ...args) { if (this.logLevel >= LogLevel.INFO) { this.log(LogLevel.INFO, message, args); } } warn(message, ...args) { if (this.logLevel >= LogLevel.WARN) { this.log(LogLevel.WARN, message, args); } } error(error, ...args) { if (this.logLevel >= LogLevel.ERROR) { const message = error ? error.message : 'Unknown error occurred'; this.log(LogLevel.ERROR, message, args); } } log(level, message, args) { const logLine = `[${LogLevel[level]}] ${message}`; if (args.length > 0) { console.log(logLine, args); } else { console.log(logLine); } } } var LogLevel; (function (LogLevel) { LogLevel[LogLevel["DEBUG"] = 0] = "DEBUG"; LogLevel[LogLevel["INFO"] = 1] = "INFO"; LogLevel[LogLevel["WARN"] = 2] = "WARN"; LogLevel[LogLevel["ERROR"] = 3] = "ERROR"; })(LogLevel || (LogLevel = {})); exports.default = Logger;