UNPKG

mushcode-mcp-server

Version:

A specialized Model Context Protocol server for MUSHCODE development assistance. Provides AI-powered code generation, validation, optimization, and examples for MUD development.

120 lines 2.78 kB
/** * Comprehensive logging system for MUSHCODE MCP Server * Provides structured logging with different levels and contexts */ export declare enum LogLevel { DEBUG = 0, INFO = 1, WARN = 2, ERROR = 3, FATAL = 4 } export interface LogContext { toolName?: string; operation?: string; userId?: string; sessionId?: string; requestId?: string; serverType?: string; [key: string]: unknown; } export interface LogEntry { timestamp: string; level: LogLevel; message: string; context?: LogContext; error?: { name: string; message: string; stack?: string; code?: string; }; performance?: { duration: number; operation: string; }; } /** * Logger class with structured logging capabilities */ export declare class Logger { private static instance; private logLevel; private logEntries; private maxLogEntries; private constructor(); static getInstance(): Logger; /** * Set the minimum log level */ setLogLevel(level: LogLevel): void; /** * Get current log level */ getLogLevel(): LogLevel; /** * Log a debug message */ debug(message: string, context?: LogContext): void; /** * Log an info message */ info(message: string, context?: LogContext): void; /** * Log a warning message */ warn(message: string, context?: LogContext): void; /** * Log an error message */ error(message: string, error?: Error, context?: LogContext): void; /** * Log a fatal error message */ fatal(message: string, error?: Error, context?: LogContext): void; /** * Log performance metrics */ performance(operation: string, duration: number, context?: LogContext): void; /** * Create a performance timer */ startTimer(operation: string, context?: LogContext): () => void; /** * Get recent log entries */ getRecentLogs(count?: number): LogEntry[]; /** * Get logs by level */ getLogsByLevel(level: LogLevel): LogEntry[]; /** * Clear all log entries */ clearLogs(): void; /** * Get log statistics */ getLogStats(): Record<string, number>; /** * Internal logging method */ private log; /** * Add log entry and manage log rotation */ private addLogEntry; /** * Output log entry to console */ private outputToConsole; } /** * Global logger instance */ export declare const logger: Logger; /** * Decorator for logging method calls */ export declare function logMethodCall(target: any, propertyName: string, descriptor: PropertyDescriptor): void; //# sourceMappingURL=logger.d.ts.map