n8n
Version:
n8n Workflow Automation Tool
44 lines (43 loc) • 1.84 kB
TypeScript
import type { InstanceRegistration } from '@n8n/api-types';
import { Logger } from '@n8n/backend-common';
import type { ClusterCheckResult, ClusterStateDiff } from '@n8n/decorators';
import { ClusterCheckMetadata } from '@n8n/decorators';
import { InstanceSettings } from 'n8n-core';
import { MessageEventBus } from '../../../eventbus/message-event-bus/message-event-bus';
import { Push } from '../../../push';
import { InstanceRegistryService } from '../instance-registry.service';
export declare class CheckService {
private readonly instanceSettings;
private readonly instanceRegistryService;
private readonly clusterCheckMetadata;
private readonly messageEventBus;
private readonly push;
private reconcileController?;
private reconcileTimer;
private isShuttingDown;
private readonly checks;
private readonly logger;
constructor(logger: Logger, instanceSettings: InstanceSettings, instanceRegistryService: InstanceRegistryService, clusterCheckMetadata: ClusterCheckMetadata, messageEventBus: MessageEventBus, push: Push);
init(): void;
startReconciliation(): void;
stopReconciliation(): void;
shutdown(): void;
private scheduleNextReconcile;
private discoverChecks;
private runReconcileSafely;
runChecks(): Promise<{
currentState: Map<string, InstanceRegistration>;
results: Array<{
checkName: string;
checkDisplayName?: string;
result?: ClusterCheckResult;
failed?: true;
}>;
}>;
private reconcile;
private processResult;
private logWarning;
private emitAuditEvent;
private broadcastPush;
}
export declare function computeDiff(previousState: ReadonlyMap<string, InstanceRegistration>, currentState: ReadonlyMap<string, InstanceRegistration>): ClusterStateDiff;