UNPKG

clickhouse-mcp

Version:
91 lines 2.39 kB
/** * Simple logging utility for MCP ClickHouse. */ export var LogLevel; (function (LogLevel) { LogLevel[LogLevel["ERROR"] = 0] = "ERROR"; LogLevel[LogLevel["WARNING"] = 1] = "WARNING"; LogLevel[LogLevel["INFO"] = 2] = "INFO"; LogLevel[LogLevel["DEBUG"] = 3] = "DEBUG"; })(LogLevel || (LogLevel = {})); export class Logger { /** * Creates a new logger instance. * * @param name - The name of the logger component */ constructor(name) { this.name = name; } /** * Set the global log level. * * @param level - The log level to set */ static setLogLevel(level) { Logger.level = level; } /** * Format the current timestamp for logging. * * @returns Formatted timestamp string */ getTimestamp() { return new Date().toISOString(); } /** * Log a debug message. * * @param message - The message to log */ debug(message) { if (Logger.level >= LogLevel.DEBUG) { console.debug(`${this.getTimestamp()} - ${this.name} - DEBUG - ${message}`); } } /** * Log an info message. * * @param message - The message to log */ info(message) { if (Logger.level >= LogLevel.INFO) { console.info(`${this.getTimestamp()} - ${this.name} - INFO - ${message}`); } } /** * Log a warning message. * * @param message - The message to log */ warning(message) { if (Logger.level >= LogLevel.WARNING) { console.warn(`${this.getTimestamp()} - ${this.name} - WARNING - ${message}`); } } /** * Log an error message. * * @param message - The message to log */ error(message) { if (Logger.level >= LogLevel.ERROR) { console.error(`${this.getTimestamp()} - ${this.name} - ERROR - ${message}`); } } } Logger.level = LogLevel.INFO; // Initialize from environment variable if available if (process.env.LOG_LEVEL) { const levelMap = { 'error': LogLevel.ERROR, 'warning': LogLevel.WARNING, 'info': LogLevel.INFO, 'debug': LogLevel.DEBUG }; const levelName = process.env.LOG_LEVEL.toLowerCase(); if (levelName in levelMap) { Logger.setLogLevel(levelMap[levelName]); } } //# sourceMappingURL=logger.js.map