UNPKG

@zhangzichao2008/mcp-graphiti

Version:

Graphiti MCP Server - Temporal Knowledge Graph for AI Agents

70 lines 2.24 kB
export var LogLevel; (function (LogLevel) { LogLevel[LogLevel["DEBUG"] = 0] = "DEBUG"; LogLevel[LogLevel["INFO"] = 1] = "INFO"; LogLevel[LogLevel["WARN"] = 2] = "WARN"; LogLevel[LogLevel["ERROR"] = 3] = "ERROR"; })(LogLevel || (LogLevel = {})); export class Logger { static instance; logLevel; constructor(logLevel = LogLevel.INFO) { this.logLevel = logLevel; } static getInstance(logLevel) { if (!Logger.instance) { Logger.instance = new Logger(logLevel); } else if (logLevel !== undefined) { // Update log level if provided Logger.instance.setLogLevel(logLevel); } return Logger.instance; } setLogLevel(level) { this.logLevel = level; } shouldLog(level) { return level >= this.logLevel; } formatMessage(level, message, ...args) { const timestamp = new Date().toISOString(); const formattedArgs = args.length > 0 ? ` ${args .map((arg) => (typeof arg === 'object' ? JSON.stringify(arg, null, 2) : String(arg))) .join(' ')}` : ''; return `[${timestamp}] [${level}] ${message}${formattedArgs}`; } debug(message, ...args) { if (this.shouldLog(LogLevel.DEBUG)) { console.debug(this.formatMessage('DEBUG', message, ...args)); } } info(message, ...args) { if (this.shouldLog(LogLevel.INFO)) { console.info(this.formatMessage('INFO', message, ...args)); } } warn(message, ...args) { if (this.shouldLog(LogLevel.WARN)) { console.warn(this.formatMessage('WARN', message, ...args)); } } error(message, ...args) { if (this.shouldLog(LogLevel.ERROR)) { console.error(this.formatMessage('ERROR', message, ...args)); } } } export const createLogger = (level = 'info') => { const logLevelMap = { debug: LogLevel.DEBUG, info: LogLevel.INFO, warn: LogLevel.WARN, error: LogLevel.ERROR, }; const logLevel = logLevelMap[level] || LogLevel.INFO; return Logger.getInstance(logLevel); }; //# sourceMappingURL=logger.js.map