@ts-ioc/logs
Version:
tsioc is AOP, Ioc container, via typescript decorator
87 lines (85 loc) • 2.67 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const tslib_1 = require("tslib");
const core_1 = require("@ts-ioc/core");
const ILoggerManager_1 = require("./ILoggerManager");
const aop_1 = require("@ts-ioc/aop");
const Level_1 = require("./Level");
/**
* console log manager.
*
* @export
* @class ConsoleLogManager
* @implements {ILoggerManager}
*/
let ConsoleLogManager = class ConsoleLogManager {
constructor() {
this.logger = new ConsoleLog();
}
configure(config) {
if (config && config.level) {
this.logger.level = config.level;
}
}
getLogger(name) {
return this.logger;
}
static getClassAnnations() {
return { "name": "ConsoleLogManager", "params": { "constructor": [], "configure": ["config"], "getLogger": ["name"] } };
}
};
ConsoleLogManager = tslib_1.__decorate([
aop_1.NonePointcut(),
core_1.Singleton(),
core_1.Injectable(ILoggerManager_1.LoggerManagerToken, 'console'),
tslib_1.__metadata("design:paramtypes", [])
], ConsoleLogManager);
exports.ConsoleLogManager = ConsoleLogManager;
/**
* console log.
*
* @class ConsoleLog
* @implements {ILogger}
*/
class ConsoleLog {
constructor() {
}
log(message, ...args) {
console.log(message, ...args);
}
trace(message, ...args) {
if (!this.level || Level_1.Levels[this.level] === 0) {
console.debug(message, ...args);
}
}
debug(message, ...args) {
// console.debug in nuix will not console.
if (!this.level || Level_1.Levels[this.level] <= 1) {
console.debug(message, ...args);
}
}
info(message, ...args) {
if (!this.level || Level_1.Levels[this.level] <= 2) {
console.info(message, ...args);
}
}
warn(message, ...args) {
if (!this.level || Level_1.Levels[this.level] <= 3) {
console.warn(message, ...args);
}
}
error(message, ...args) {
if (!this.level || Level_1.Levels[this.level] <= 4) {
console.error(message, ...args);
}
}
fatal(message, ...args) {
if (!this.level || Level_1.Levels[this.level] <= 5) {
console.error(message, ...args);
}
}
static getClassAnnations() {
return { "name": "ConsoleLog", "params": { "constructor": [], "log": ["message", "args"], "trace": ["message", "args"], "debug": ["message", "args"], "info": ["message", "args"], "warn": ["message", "args"], "error": ["message", "args"], "fatal": ["message", "args"] } };
}
}
//# sourceMappingURL=sourcemaps/ConsoleLogManager.js.map