core-api-lib
Version:
Core library with all microservice utilities
49 lines (48 loc) • 1.75 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.LoggerService = void 0;
const logger_1 = require("../common/logger");
const Logger = require("bunyan");
class LoggerService {
constructor() { }
static getInstance() {
if (!LoggerService.instance) {
LoggerService.instance = new LoggerService();
}
return LoggerService.instance;
}
configure(appName) {
var _a;
if (this.appName !== 'core-api-lib.defaults' && this.logger) {
(_a = this.logger) === null || _a === void 0 ? void 0 : _a.warn('Logger is already initialized');
return;
}
this.appName = appName;
this.logger = Logger.createLogger({
name: this.appName,
stream: process.stdout,
});
}
log(level, message, appName = 'core-api-lib.defaults') {
var _a, _b, _c, _d, _e;
if (!this.logger) {
this.configure(appName);
}
if (level === logger_1.LOG_LEVEL.error) {
(_a = this.logger) === null || _a === void 0 ? void 0 : _a.error(message);
}
else if (level === logger_1.LOG_LEVEL.warn) {
(_b = this.logger) === null || _b === void 0 ? void 0 : _b.warn(message);
}
else if (level === logger_1.LOG_LEVEL.debug) {
(_c = this.logger) === null || _c === void 0 ? void 0 : _c.debug(message);
}
else if (level === logger_1.LOG_LEVEL.trace) {
(_d = this.logger) === null || _d === void 0 ? void 0 : _d.trace(message);
}
else {
(_e = this.logger) === null || _e === void 0 ? void 0 : _e.info(message);
}
}
}
exports.LoggerService = LoggerService;