UNPKG

@flowlab/all

Version:

A cool library focusing on handling various flows

39 lines (35 loc) 1.18 kB
// --- src/monitoring/logger.ts --- /** * @interface ILogger * @description 日志记录器接口 */ export interface ILogger { debug(message: string, meta?: any): void; info(message: string, meta?: any): void; warn(message: string, meta?: any): void; error(message: string, error?: Error, meta?: any): void; } /** * MARK: 控制台日志记录器 * @class ConsoleLogger * @implements ILogger * @description 简单的控制台日志记录器 (示例) */ export class ConsoleLogger implements ILogger { private contextPrefix: string; constructor(contextPrefix: string = '[FlowLab]') { this.contextPrefix = contextPrefix; } debug(message: string, meta?: any): void { console.debug(`${this.contextPrefix}[DEBUG] ${message}`, meta ?? ''); } info(message: string, meta?: any): void { console.info(`${this.contextPrefix}[INFO] ${message}`, meta ?? ''); } warn(message: string, meta?: any): void { console.warn(`${this.contextPrefix}[WARN] ${message}`, meta ?? ''); } error(message: string, error?: Error, meta?: any): void { console.error(`${this.contextPrefix}[ERROR] ${message}`, error ?? '', meta ?? ''); } }