UNPKG

logceptor

Version:

NestJS interceptor to log HTTP requests and responses with full control, correlation IDs, file rotation, sensitive data masking, and production-ready features.

30 lines (29 loc) 977 B
import { NestInterceptor, ExecutionContext, CallHandler } from '@nestjs/common'; import { Observable } from 'rxjs'; export type LogFormat = 'text' | 'json'; export type LogLevel = 'log' | 'warn' | 'error' | 'debug'; export interface LoggerInterceptorOptions { level?: LogLevel; format?: LogFormat; filename?: string; folder?: string; maskFields?: string[]; maxFileSizeMB?: number; } export declare class LoggingInterceptor implements NestInterceptor { private readonly logger; private readonly level; private readonly format; private readonly logFilePath; private readonly maskFields; private readonly maxFileSizeBytes; constructor(options?: LoggerInterceptorOptions); intercept(context: ExecutionContext, next: CallHandler): Observable<any>; private extractPayload; private formatLog; private safeStringify; private maskSensitive; private appendToFile; private cleanupOldLogs; private log; }