@knath2000/codebase-indexing-mcp
Version:
MCP server for codebase indexing with Voyage AI embeddings and Qdrant vector storage
84 lines (83 loc) • 2.08 kB
TypeScript
import { HealthStatus, Config } from '../types.js';
import { VoyageClient } from '../clients/voyage-client.js';
import { QdrantVectorClient } from '../clients/qdrant-client.js';
export declare class HealthMonitorService {
private config;
private startTime;
private voyageClient;
private qdrantClient;
private lastHealthCheck;
private healthCheckInterval;
constructor(config: Config, voyageClient: VoyageClient, qdrantClient: QdrantVectorClient);
/**
* Get comprehensive health status
*/
getHealthStatus(): Promise<HealthStatus>;
/**
* Check Qdrant service health
*/
private checkQdrantHealth;
/**
* Check Voyage AI service health
*/
private checkVoyageHealth;
/**
* Check file watcher service health
*/
private checkFileWatcherHealth;
/**
* Get system metrics
*/
private getSystemMetrics;
/**
* Create a failed service health object
*/
private getFailedServiceHealth;
/**
* Start periodic health checks
*/
private startHealthChecks;
/**
* Stop periodic health checks
*/
stopHealthChecks(): void;
/**
* Get simple health status for quick checks
*/
getSimpleHealth(): Promise<{
status: string;
timestamp: Date;
}>;
/**
* Check if the service is ready to serve requests
*/
isReady(): Promise<boolean>;
/**
* Check if the service is alive (basic liveness check)
*/
isAlive(): boolean;
/**
* Get detailed service statistics
*/
getDetailedStats(): Promise<{
health: HealthStatus;
performance: {
averageResponseTime: number;
requestCount: number;
errorRate: number;
};
resources: {
memoryUsage: number;
uptime: number;
lastHealthCheck: Date;
};
}>;
/**
* Get health summary for logging/monitoring
*/
getHealthSummary(): string;
/**
* Cleanup resources
*/
destroy(): void;
}