@configurator/ravendb
Version:
RavenDB client for Node.js
50 lines • 1.54 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.getLogger = void 0;
const util_1 = require("util");
const Exceptions_1 = require("../Exceptions");
const isDebug = !!process.env.NODE_DEBUG;
function getLogger({ name = "ravendb", module = "" }) {
const logName = module ? `${name}-${module}` : name;
if (!isDebug) {
const noop = (msg) => {
};
return {
error: noop,
info: noop,
warn: noop
};
}
return new Logger(logName);
}
exports.getLogger = getLogger;
class Logger {
constructor(name) {
this._logdebug = (0, util_1.debuglog)(name);
}
error(errOrMsg, additionalMsg) {
this._logWithError(errOrMsg, additionalMsg, "ERROR");
}
warn(errOrMsg, additionalMsg) {
this._logWithError(errOrMsg, additionalMsg, "WARN");
}
info(msg) {
this._log(`${msg}`, "INFO");
}
_logWithError(err, additionalMsg, level) {
let msg = err && err.stack
? (0, Exceptions_1.printError)(err)
: err;
if (additionalMsg) {
msg = `${additionalMsg} ${msg}`;
}
this._log(`${msg}`, level);
}
_log(msg, level = "INFO") {
const now = new Date();
const dateString = `${now.getFullYear()}-${now.getMonth()}-${now.getDate()}`
+ ` ${now.getHours()}:${now.getMinutes()}:${now.getSeconds()}`;
this._logdebug(`${dateString}|${level}: ${msg}`);
}
}
//# sourceMappingURL=LogUtil.js.map