UNPKG

pandora

Version:

A powerful and lightweight application manager for Node.js applications powered by TypeScript.

68 lines 2.41 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); const pandora_service_logger_1 = require("pandora-service-logger"); const GlobalConfigProcessor_1 = require("../universal/GlobalConfigProcessor"); const LoggerBroker_1 = require("../universal/LoggerBroker"); /** * Class ServiceLogger */ class ServiceLogger { constructor(serviceCore) { this.prefix = `[appName: ${serviceCore.context.appName}, processName: ${serviceCore.context.processName}, workMode: ${serviceCore.workMode}] `; this.setupLogger(serviceCore); } setupLogger(serviceCore) { const serviceId = serviceCore.getServiceId(); const globalConfig = GlobalConfigProcessor_1.GlobalConfigProcessor.getInstance().getAllProperties(); const defaultLoggerManager = pandora_service_logger_1.DefaultLoggerManager.getInstance(); if (!globalConfig.logger.isolatedServiceLogger && !ServiceLogger.commonServiceLogger) { ServiceLogger.commonServiceLogger = defaultLoggerManager.createLogger('service', { stdoutLevel: 'NONE', level: 'INFO', type: 'date', dir: LoggerBroker_1.getAppLogDir(serviceCore.context.appName) }); } if (ServiceLogger.commonServiceLogger) { this.logger = ServiceLogger.commonServiceLogger; return; } this.logger = defaultLoggerManager.createLogger(serviceId, { stdoutLevel: 'NONE', level: 'INFO', type: 'date', dir: LoggerBroker_1.getAppLogDir(serviceCore.context.appName) }); } debug(...args) { args = this.doPrefix(args); this.logger.debug(...args); } warn(...args) { args = this.doPrefix(args); this.logger.warn(...args); } info(...args) { args = this.doPrefix(args); this.logger.info(...args); } error(...args) { args = this.doPrefix(args); this.logger.error(...args); } log(...args) { args = this.doPrefix(args); this.logger.info(...args); } write(...args) { this.logger.write(...args); } doPrefix(args) { if (typeof args[0] === 'string') { args[0] = this.prefix + args[0]; } return args; } } exports.default = ServiceLogger; //# sourceMappingURL=ServiceLogger.js.map