UNPKG

@nodedaemon/core

Version:

Production-ready Node.js process manager with zero external dependencies

38 lines 1.51 kB
import { EventEmitter } from 'events'; import { ProcessConfig, ProcessInfo, HealthCheckResult } from '../types'; import { LogManager } from './LogManager'; export declare class ProcessOrchestrator extends EventEmitter { private processes; private childProcesses; private restartTimers; private logger; private isShuttingDown; constructor(logger: LogManager); private setupClusterEventHandlers; private setupProcessEventHandlers; startProcess(config: ProcessConfig): Promise<string>; private resolveInstanceCount; private determineStrategy; private startClusterProcess; private startClusterInstance; private startSingleProcess; private handleWorkerExit; private handleInstanceExit; private scheduleRestart; private restartInstance; private updateProcessStatus; stopProcess(processId: string, force?: boolean): Promise<void>; private stopInstance; restartProcess(processId: string, graceful?: boolean): Promise<void>; gracefulReload(processInfo: ProcessInfo): Promise<void>; deleteProcess(processId: string): void; getProcesses(): ProcessInfo[]; getProcess(processId: string): ProcessInfo | undefined; getProcessByName(name: string): ProcessInfo | undefined; private findInstanceByPid; private findProcessByInstanceId; reloadAllProcesses(): Promise<void>; gracefulShutdown(): Promise<void>; getHealthCheck(): HealthCheckResult[]; } //# sourceMappingURL=ProcessOrchestrator.d.ts.map