twitch-core
Version:
Twitch bot command client
43 lines (42 loc) • 1.75 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.ClientLogger = void 0;
const winston_1 = __importDefault(require("winston"));
class ClientLogger {
constructor() {
const formatter = winston_1.default.format.combine(winston_1.default.format.timestamp({
format: 'YYYY/MM/DD HH:mm:ss'
}), winston_1.default.format.printf(info => { var _a; return `[${info.timestamp}] (${(_a = info.service) !== null && _a !== void 0 ? _a : '?'}) ${info.level.toUpperCase()}: ${info.message}`; }));
this.log = winston_1.default.createLogger({
level: 'silly',
format: winston_1.default.format.json(),
transports: [
new winston_1.default.transports.Console({
level: 'verbose',
format: formatter
}),
new winston_1.default.transports.File({
filename: 'log_error.log',
level: 'error',
format: formatter
}),
new winston_1.default.transports.File({
filename: 'log_info.log',
level: 'info',
format: formatter
}),
new winston_1.default.transports.File({
filename: 'log_full.log',
format: formatter
})
]
});
}
getLogger(moduleName) {
return this.log.child({ service: moduleName });
}
}
exports.ClientLogger = ClientLogger;