UNPKG

logs-interceptor

Version:

High-performance, production-ready log interceptor for Node.js applications with Loki integration. Built with Clean Architecture principles. Supports Node.js, Browser, and Node-RED.

42 lines 1.87 kB
/** * Application Service: LogService * Orchestrates log processing */ import { ILogger, LoggerMetrics, HealthStatus } from '../../domain/interfaces/ILogger'; import type { LogLevel } from '../../domain/value-objects/LogLevel'; import { ILogFilter } from '../../domain/interfaces/ILogFilter'; import { ILogBuffer } from '../../domain/interfaces/ILogBuffer'; import { ILogTransport } from '../../domain/interfaces/ILogTransport'; import { IContextProvider } from '../../domain/interfaces/IContextProvider'; export declare class LogService implements ILogger { private readonly filter; private readonly buffer; private readonly transport; private readonly contextProvider; private readonly config; private metrics; private startTime; constructor(filter: ILogFilter, buffer: ILogBuffer, transport: ILogTransport, contextProvider: IContextProvider, config: { appName: string; version: string; environment: string; labels: Record<string, string>; dynamicLabels: Record<string, () => string | number>; enableMetrics: boolean; }); private initializeMetrics; debug(message: string, context?: Record<string, unknown>): void; info(message: string, context?: Record<string, unknown>): void; warn(message: string, context?: Record<string, unknown>): void; error(message: string, context?: Record<string, unknown>): void; fatal(message: string, context?: Record<string, unknown>): void; log(level: LogLevel, message: string, context?: Record<string, unknown>): void; trackEvent(eventName: string, properties?: Record<string, unknown>): void; private createLogEntry; flush(): Promise<void>; getMetrics(): LoggerMetrics; getHealth(): HealthStatus; destroy(): Promise<void>; private updateMetrics; } //# sourceMappingURL=LogService.d.ts.map