@softwaredevelopment/node-red-contrib-bodhi-device-occupancy-sensor
Version:
Occupancy Sensor device for bodhi node red
57 lines • 2.02 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.CustomLogger = void 0;
const winston_1 = require("winston");
const { combine, timestamp, colorize, printf } = winston_1.format;
class CustomLogger {
constructor(loggerName, logLevel = 'debug') {
this._loggerName = loggerName;
this.logger = (0, winston_1.createLogger)({
transports: [
new winston_1.transports.Console({
format: combine(timestamp({ format: 'YYYY-MM-DD HH:mm:ss' }), colorize({
all: true,
colors: {
debug: 'blue',
info: 'green',
warn: 'yellow',
error: 'red',
},
}), printf(info => `${info.timestamp} - ${info.label ? `[${info.label}]` : ''} [${info.level}]: ${info.message}`)),
}),
],
});
this._level = logLevel;
this.logger.level = this._level;
}
set loggerName(value) {
this._loggerName = value;
}
get loggerName() {
return this._loggerName;
}
get level() {
return this._level;
}
set level(value) {
this._level = value;
this.logger.level = value;
}
log(message, level = 'info', ...args) {
return this.logger.log(level, message, { label: this.loggerName }, ...args);
}
info(message, ...args) {
return this.logger.info(message, { label: this.loggerName }, ...args);
}
debug(message, ...args) {
return this.logger.debug(message, { label: this.loggerName }, ...args);
}
error(message, ...args) {
return this.logger.error(message, { label: this.loggerName }, ...args);
}
warn(message, ...args) {
return this.logger.warn(message, { label: this.loggerName }, ...args);
}
}
exports.CustomLogger = CustomLogger;
//# sourceMappingURL=logger.js.map