cyber-mysql-openai
Version:
Intelligent natural language to SQL translator with self-correction capabilities using OpenAI and MySQL
60 lines (59 loc) • 1.68 kB
TypeScript
import { LogLevel } from '../types';
/**
* Clase Logger que maneja diferentes niveles de log
*/
export declare class Logger {
private level;
private logDir;
private enabled;
constructor(level?: LogLevel, logDir?: string, enabled?: boolean);
/**
* Configura el nivel de log
*/
setLevel(level: LogLevel): void;
/**
* Habilita o deshabilita los logs
*/
setEnabled(enabled: boolean): void;
/**
* Configura el directorio de logs
*/
setLogDirectory(dir: string): void;
/**
* Registra un mensaje de error
*/
error(message: string, data?: any): void;
/**
* Registra un mensaje de advertencia
*/
warn(message: string, data?: any): void;
/**
* Registra un mensaje informativo
*/
info(message: string, data?: any): void;
/**
* Registra un mensaje de depuración
*/
debug(message: string, data?: any): void;
/**
* Función interna de log
*/
private log;
/**
* Asegura que exista un directorio
*/
private ensureDirectoryExists;
/**
* Registra el uso de tokens en un archivo de log
*/
logTokenUsage(requestId: string, operation: string, promptTokens: number, completionTokens: number, totalTokens: number, model: string): void;
/**
* Registra prompts y respuestas para análisis
*/
logPromptAndResponse(requestId: string, operation: string, prompt: string, response: string, success: boolean, attempt?: number, model?: string): void;
}
/**
* Cuenta tokens en un texto (estimación simple)
*/
export declare function countTokens(text: string): number;
export default Logger;