Skip to content

Commit

Permalink
增加getLogger方法获取Logger实例
Browse files Browse the repository at this point in the history
  • Loading branch information
陌生人 committed May 25, 2023
1 parent d9565cd commit 6d2b444
Show file tree
Hide file tree
Showing 2 changed files with 57 additions and 55 deletions.
92 changes: 47 additions & 45 deletions src/adapter/base.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,48 +2,50 @@ const log4js = require('log4js');
const _logger = Symbol('_logger');

module.exports = class {
constructor(config) {
this[_logger] = {};
const logConfig = this.formatConfig(config);
this.setLogger(logConfig);
}

trace(...args) {
return this[_logger].trace(...args);
}

debug(...args) {
return this[_logger].debug(...args);
}

info(...args) {
return this[_logger].info(...args);
}

warn(...args) {
return this[_logger].warn(...args);
}

error(...args) {
return this[_logger].error(...args);
}

/**
* log4js configure
*/
configure(config) {
return log4js.configure(config);
}

/**
* log4js setLogger
*/
setLogger(config, category) {
this.configure(config);
this[_logger] = log4js.getLogger(category);
}

formatConfig(config) {
return config;
}
};
constructor(config) {
this[_logger] = {};
const logConfig = this.formatConfig(config);
this.setLogger(logConfig);
}

trace(...args) {
return this[_logger].trace(...args);
}

debug(...args) {
return this[_logger].debug(...args);
}

info(...args) {
return this[_logger].info(...args);
}

warn(...args) {
return this[_logger].warn(...args);
}

error(...args) {
return this[_logger].error(...args);
}

/**
* log4js configure
*/
configure(config) {
return log4js.configure(config);
}

/**
* log4js setLogger
*/
setLogger(config, category) {
this.configure(config);
this[_logger] = log4js.getLogger(category);
}
getLogger() {
return this[_logger];
}
formatConfig(config) {
return config;
}
};
20 changes: 10 additions & 10 deletions src/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,20 +5,20 @@ const FileAdapter = require('./adapter/file');
const DateFileAdapter = require('./adapter/datefile');

class Logger {
constructor(config = {}) {
const Handle = config.handle || ConsoleAdapter;
delete config.handle;
constructor(config = {}) {
const Handle = config.handle || ConsoleAdapter;
delete config.handle;

this._logger = new Handle(config);
['trace', 'debug', 'info', 'warn', 'error'].forEach(level => {
assert(this._logger[level], `adapter function ${level} not exist!`);
this[level] = this._logger[level].bind(this._logger);
});
}
this._logger = new Handle(config);
['trace', 'debug', 'info', 'warn', 'error', 'getLogger'].forEach(level => {
assert(this._logger[level], `adapter function ${level} not exist!`);
this[level] = this._logger[level].bind(this._logger);
});
}
}

Logger.Basic = BasicAdapter;
Logger.Console = ConsoleAdapter;
Logger.File = FileAdapter;
Logger.DateFile = DateFileAdapter;
module.exports = Logger;
module.exports = Logger;

0 comments on commit 6d2b444

Please sign in to comment.