UNPKG

promptforge

Version:

Adaptive Prompt Intelligence & Orchestration SDK - Manage, optimize, and serve prompts for LLMs with versioning, feedback loops, and multi-provider support

49 lines 1.38 kB
import pino from 'pino'; import { LogLevel } from '../types.js'; export class Logger { logger; constructor(config = {}) { const defaultConfig = { level: LogLevel.INFO, pretty: process.env.NODE_ENV !== 'production', ...config, }; this.logger = pino.default({ level: defaultConfig.level, transport: defaultConfig.pretty ? { target: 'pino-pretty', options: { colorize: true, translateTime: 'HH:MM:ss', ignore: 'pid,hostname', }, } : undefined, }); } debug(msg, ...args) { this.logger.debug(msg, ...args); } info(msg, ...args) { this.logger.info(msg, ...args); } warn(msg, ...args) { this.logger.warn(msg, ...args); } error(msg, error, ...args) { if (error) { this.logger.error({ err: error, ...args }, msg); } else { this.logger.error(msg, ...args); } } child(bindings) { const childLogger = new Logger(); childLogger.logger = this.logger.child(bindings); return childLogger; } } export const logger = new Logger(); //# sourceMappingURL=logger.js.map