UNPKG

openai-compatible-providers-framework

Version:

OpenAI Compatible Providers Framework with Qwen and iFlow tool calling support, OAuth authentication, dynamic module loading, and comprehensive debug logging system

313 lines 7.12 kB
/** * Debug Logging Types * 调试日志类型定义 */ /** * Debug Logging Configuration * 调试日志配置接口 */ export interface DebugConfig { enabled: boolean; baseDirectory: string; paths: { requests: string; responses: string; errors: string; pipeline: string; system: string; }; logLevel: 'debug' | 'info' | 'warn' | 'error' | 'silent'; requestTracking: { enabled: boolean; generateRequestIds: boolean; includeTimestamps: boolean; trackMetadata: boolean; }; contentFiltering: { enabled: boolean; sensitiveFields: string[]; maxContentLength: number; sanitizeResponses: boolean; }; fileManagement: { maxFileSize: number; maxFiles: number; compressOldLogs: boolean; retentionDays: number; }; performanceTracking: { enabled: boolean; trackTiming: boolean; trackMemoryUsage: boolean; trackSuccessRates: boolean; }; } /** * Request Context for Tracking * 请求跟踪上下文 */ export interface RequestContext { requestId: string; pipelineId: string; sessionId?: string; startTime: number; endTime?: number; provider: string; model?: string; operation: 'chat' | 'streamChat' | 'healthCheck'; stages: PipelineStage[]; metadata?: Record<string, any>; } /** * Pipeline Stage Tracking * 流水线阶段跟踪 */ export interface PipelineStage { stage: string; startTime: number; endTime?: number; duration?: number; status: 'pending' | 'running' | 'completed' | 'failed'; error?: string; data?: any; } /** * Request-Response Log Entry * 请求-响应日志条目 */ export interface RequestResponseLog { requestId: string; pipelineId: string; timestamp: number; provider: string; operation: string; request: { headers?: Record<string, string>; body: any; metadata?: Record<string, any>; }; response: { status: number; headers?: Record<string, string>; body: any; metadata?: Record<string, any>; }; duration: number; success: boolean; error?: string; stages: PipelineStage[]; } /** * Error Log Entry * 错误日志条目 */ export interface ErrorLog { requestId: string; pipelineId: string; timestamp: number; provider: string; operation: string; error: { message: string; stack?: string; code?: string; type: string; }; request: { headers?: Record<string, string>; body: any; metadata?: Record<string, any>; }; failedStage?: string; stages: PipelineStage[]; debugInfo?: Record<string, any>; } /** * System Log Entry * 系统日志条目 */ export interface SystemLog { level: 'debug' | 'info' | 'warn' | 'error'; message: string; timestamp: number; requestId?: string; provider?: string; operation?: string; metadata?: Record<string, any>; } /** * Performance Metrics * 性能指标 */ export interface PerformanceMetrics { requestId: string; pipelineId: string; provider: string; operation: string; totalDuration: number; validationDuration?: number; mappingDuration?: number; executionDuration?: number; responseDuration?: number; memoryUsage?: { start: number; end: number; peak: number; }; success: boolean; error?: string; stagePerformance: { [stage: string]: { duration: number; success: boolean; error?: string; }; }; } /** * Log Statistics * 日志统计 */ export interface LogStatistics { totalRequests: number; successfulRequests: number; failedRequests: number; successRate: number; averageResponseTime: number; minResponseTime: number; maxResponseTime: number; errorCounts: { [errorType: string]: number; }; providerStats: { [provider: string]: { totalRequests: number; successfulRequests: number; failedRequests: number; averageResponseTime: number; }; }; timeRange: { start: number; end: number; }; } /** * Debug Log Manager Options * 调试日志管理器选项 */ export interface DebugLogManagerOptions { config: DebugConfig; autoCleanup?: boolean; cleanupInterval?: number; enableConsoleOutput?: boolean; } /** * File Manager Options * 文件管理器选项 */ export interface FileManagerOptions { config: DebugConfig; enableCompression?: boolean; compressionFormat?: 'gzip' | 'zip'; enableBackup?: boolean; backupLocation?: string; } /** * Content Filter Options * 内容过滤选项 */ export interface ContentFilterOptions { enabled: boolean; sensitiveFields: string[]; maxContentLength: number; customFilters?: ((data: any) => any)[]; preserveStructure: boolean; } /** * Request Tracker Options * 请求跟踪器选项 */ export interface RequestTrackerOptions { enabled: boolean; generateRequestIds: boolean; idPrefix?: string; includeSessionTracking: boolean; includeUserTracking?: boolean; trackMetadata: boolean; } /** * Stage Names * 阶段名称枚举 */ export declare enum PipelineStageNames { VALIDATION = "validation", COMPATIBILITY_MAPPING = "compatibility_mapping", PROVIDER_EXECUTION = "provider_execution", RESPONSE_MAPPING = "response_mapping", RESPONSE_STANDARDIZATION = "response_standardization", ERROR_HANDLING = "error_handling", CLEANUP = "cleanup" } /** * Log Formats * 日志格式枚举 */ export declare enum LogFormats { JSONL = "jsonl",// JSON Lines format JSON = "json",// Pretty JSON format CSV = "csv",// CSV format PRETTY = "pretty" } /** * Log Levels * 日志级别枚举 */ export declare enum LogLevels { DEBUG = "debug", INFO = "info", WARN = "warn", ERROR = "error", SILENT = "silent" } /** * Default Configuration * 默认配置 */ export declare const DEFAULT_DEBUG_CONFIG: DebugConfig; /** * Configuration Validation Result * 配置验证结果 */ export interface ConfigValidationResult { isValid: boolean; errors: string[]; warnings: string[]; normalizedConfig?: DebugConfig; } /** * Log Entry Types * 日志条目类型联合 */ export type LogEntry = RequestResponseLog | ErrorLog | SystemLog | PerformanceMetrics; /** * Stage Status Types * 阶段状态类型 */ export type StageStatus = 'pending' | 'running' | 'completed' | 'failed'; /** * Operation Types * 操作类型 */ export type OperationType = 'chat' | 'streamChat' | 'healthCheck'; /** * Log Level Types * 日志级别类型 */ export type LogLevel = 'debug' | 'info' | 'warn' | 'error' | 'silent'; /** * Provider Types * 提供者类型 */ export type ProviderType = 'qwen' | 'iflow' | 'openai' | 'custom'; //# sourceMappingURL=debug-types.d.ts.map