/** * Electron 主进程日志工具 * * 简化版,直接输出到控制台 */ export enum LogLevel { DEBUG = 0, INFO = 1, WARN = 2, ERROR = 3, } const LOG_LEVEL = process.env.NODE_ENV === 'production' ? LogLevel.INFO : LogLevel.DEBUG function shouldLog(level: LogLevel): boolean { return level >= LOG_LEVEL } function formatMessage(level: string, module: string, message: string): string { const timestamp = new Date().toISOString() return `[${timestamp}] [${level}] [${module}] ${message}` } export function createLogger(module: string) { return { debug: (message: string, ...args: unknown[]) => { if (!shouldLog(LogLevel.DEBUG)) return console.debug(formatMessage('DEBUG', module, message), ...args) }, info: (message: string, ...args: unknown[]) => { if (!shouldLog(LogLevel.INFO)) return console.info(formatMessage('INFO', module, message), ...args) }, warn: (message: string, ...args: unknown[]) => { if (!shouldLog(LogLevel.WARN)) return console.warn(formatMessage('WARN', module, message), ...args) }, error: (message: string, ...args: unknown[]) => { if (!shouldLog(LogLevel.ERROR)) return console.error(formatMessage('ERROR', module, message), ...args) }, } } export const logger = createLogger('Main')