@papabravocorp/pluggable-logger
Version:
A pluggable logger for Node.js that writes structured logs to local file systems, Azure ADLS, or custom storage backends.
29 lines (28 loc) • 851 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Logger = void 0;
class Logger {
constructor(provider) {
this.provider = provider;
}
async log(level, message, meta) {
const entry = {
timestamp: new Date().toISOString(),
level,
message,
meta,
};
try {
await this.provider.write(entry);
}
catch (err) {
console.error('[Logger][WRITE FAILED]', err);
console[level.toLowerCase()](entry);
}
}
info(msg, meta) { return this.log('INFO', msg, meta); }
warn(msg, meta) { return this.log('WARN', msg, meta); }
error(msg, meta) { return this.log('ERROR', msg, meta); }
debug(msg, meta) { return this.log('DEBUG', msg, meta); }
}
exports.Logger = Logger;