token-guardian
Version:
A comprehensive solution for protecting and managing API tokens and secrets
39 lines • 1.12 kB
JavaScript
/**
* Simple logger utility
*/
export class Logger {
level;
constructor(level = 'info') {
this.level = level;
}
debug(message, meta) {
if (this.shouldLog('debug')) {
console.debug(this.format('DEBUG', message, meta));
}
}
info(message, meta) {
if (this.shouldLog('info')) {
console.info(this.format('INFO', message, meta));
}
}
warn(message, meta) {
if (this.shouldLog('warn')) {
console.warn(this.format('WARN', message, meta));
}
}
error(message, meta) {
if (this.shouldLog('error')) {
console.error(this.format('ERROR', message, meta));
}
}
shouldLog(level) {
const levels = ['debug', 'info', 'warn', 'error'];
return levels.indexOf(level) >= levels.indexOf(this.level);
}
format(level, message, meta) {
const timestamp = new Date().toISOString();
const metaStr = meta ? ` ${JSON.stringify(meta)}` : '';
return `[${timestamp}] ${level}: ${message}${metaStr}`;
}
}
//# sourceMappingURL=Logger.js.map