flexmonster-mongo-connector
Version:
Custom data source API implementation for MongoDB
41 lines • 1.31 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.FlexmonsterLogger = void 0;
class FlexmonsterLogger {
constructor() {
this._currentTimer = undefined;
this.flushHandler = () => {
if (typeof this._currentTimer !== "undefined")
clearTimeout(this._currentTimer);
this._currentTimer = setTimeout(() => {
this.flushLogs();
}, 1000);
};
this._logsStash = [];
this.messageTemplate = "Flexmonster MongoDB Connector";
this.flushHandler();
}
log(...args) {
let message = "";
args.forEach((item) => {
message += item.toString() + " ";
});
this._logsStash.push({
message,
timestamp: new Date()
});
return;
}
formatMessage(logItem) {
return logItem.timestamp.toISOString() + "|" + this.messageTemplate + "|" + logItem.message;
}
flushLogs() {
this._logsStash.forEach((item) => {
console.log(this.formatMessage(item));
});
this._logsStash = [];
this.flushHandler();
}
}
exports.FlexmonsterLogger = FlexmonsterLogger;
//# sourceMappingURL=FlexmonsterLogger.js.map