bb-inspired
Version:
Core library for BB-inspired NestJS backend
31 lines (30 loc) • 939 B
TypeScript
import { WebsocketGateway } from './websocket.gateway';
export interface WebSocketHealthResult {
status: 'up' | 'down' | 'degraded';
serverRunning: boolean;
activeConnections: number;
activeChannels: number;
metrics: {
messagesPerMinute: number;
connectionAttempts: number;
failedConnections: number;
averageLatency: number;
};
timestamp: string;
}
export declare class WebsocketHealthService {
private readonly wsGateway;
private readonly logger;
private messagesCount;
private connectionAttempts;
private failedConnections;
private latencyMeasurements;
private lastMetricsReset;
constructor(wsGateway: WebsocketGateway);
check(): Promise<WebSocketHealthResult>;
trackMessage(): void;
trackConnection(success: boolean): void;
trackLatency(latencyMs: number): void;
private resetMetrics;
private calculateAverageLatency;
}