/** * 로깅 헬퍼 함수 * * 공통 필드(agentId, slot, memoryId, traceId)를 포함한 구조화된 로깅을 위한 헬퍼 함수 * * MCP 스펙 준수: * - notifications/message 형식 준수 * - 공통 컨텍스트 필드 포함 * - PII 마스킹 자동 적용 * * 참조: * - MCP 스펙: https://spec.modelcontextprotocol.io/specification/server/#logging */ /** * 로깅 메타데이터 스키마 * MCP 스펙 준수: 공통 필드 포함 */ export interface LogMetadataSchema { agentId?: string; slot?: 'A' | 'B' | 'C'; memoryId?: string; traceId?: string; requestId?: string; [key: string]: unknown; } /** * 로깅 컨텍스트 * 공통 필드를 포함한 로깅 컨텍스트 */ export interface LoggingContext { agentId?: string; slot?: 'A' | 'B' | 'C'; memoryId?: string; traceId?: string; requestId?: string; } /** * 로깅 헬퍼 클래스 * 공통 필드를 포함한 구조화된 로깅을 제공 */ export declare class LoggingHelper { private context; constructor(context?: LoggingContext); /** * 컨텍스트 업데이트 */ updateContext(context: Partial): void; /** * 컨텍스트 가져오기 */ getContext(): LoggingContext; /** * 메타데이터에 컨텍스트 병합 */ private mergeContext; /** * 디버그 레벨 로그 */ debug(message: string, meta?: LogMetadataSchema): void; /** * 정보 레벨 로그 */ info(message: string, meta?: LogMetadataSchema): void; /** * 경고 레벨 로그 */ warn(message: string, meta?: LogMetadataSchema): void; /** * 에러 레벨 로그 */ error(message: string, meta?: LogMetadataSchema): void; } /** * 공통 필드를 포함한 로깅 헬퍼 함수 * * @example * ```typescript * import { logWithContext } from './logging-helpers.js'; * * logWithContext.info('메모리 조회 완료', { * memoryId: 'mem_123', * operation: 'recall' * }); * ``` */ export declare const logWithContext: { /** * 디버그 레벨 로그 (컨텍스트 포함) */ debug(message: string, meta?: LogMetadataSchema, context?: LoggingContext): void; /** * 정보 레벨 로그 (컨텍스트 포함) */ info(message: string, meta?: LogMetadataSchema, context?: LoggingContext): void; /** * 경고 레벨 로그 (컨텍스트 포함) */ warn(message: string, meta?: LogMetadataSchema, context?: LoggingContext): void; /** * 에러 레벨 로그 (컨텍스트 포함) */ error(message: string, meta?: LogMetadataSchema, context?: LoggingContext): void; }; /** * 컨텍스트를 포함한 로깅 헬퍼 함수 생성 * * @param context 기본 컨텍스트 * @returns LoggingHelper 인스턴스 * * @example * ```typescript * import { createLogger } from './logging-helpers.js'; * * const logger = createLogger({ * agentId: 'default', * slot: 'A' * }); * * // logger는 자동으로 PII 마스킹을 적용합니다 * logger.info('메모리 조회 완료', { memoryId: 'mem_123' }); * ``` */ export declare function createLogger(context?: LoggingContext): LoggingHelper; //# sourceMappingURL=logging-helpers.d.ts.map