@dollhousemcp/mcp-server
Version:
DollhouseMCP - A Model Context Protocol (MCP) server that enables dynamic AI persona management from markdown files, allowing Claude and other compatible AI assistants to activate and switch between different behavioral personas.
47 lines • 1.63 kB
TypeScript
/**
* Central coordinator for the Metrics Collection System.
*
* Registers collectors and sinks, runs periodic collection cycles,
* assembles immutable MetricSnapshot objects, and dispatches them
* to all registered sinks.
*/
import type { ILogger } from '../types/ILogger.js';
import type { IMetricCollector, IMetricsSink, MetricSnapshot, MetricsManagerConfig } from './types.js';
export declare class MetricsManager {
private readonly collectors;
private readonly sinks;
private readonly config;
private readonly logger;
private timer;
private snapshotCounter;
private collectionsCompleted;
private collectorErrorsTotal;
private sinkErrorsTotal;
private lastCollectionDurationMs;
private closed;
private readonly processStartTime;
constructor(config: MetricsManagerConfig, logger: ILogger);
registerCollector(collector: IMetricCollector): void;
registerSink(sink: IMetricsSink): void;
start(): void;
collectNow(): Promise<MetricSnapshot>;
private collectFromCollectors;
private warnIfOversized;
private warnIfSlow;
private deepFreezeSnapshot;
private dispatchToSinks;
close(): Promise<void>;
getManagerStats(): {
collectionsCompleted: number;
collectorErrorsTotal: number;
sinkErrorsTotal: number;
lastCollectionDurationMs: number;
collectorsRegistered: number;
sinksRegistered: number;
disabledCollectors: number;
processStartTime: string;
};
private assertOpen;
private buildSelfMonitoringMetrics;
}
//# sourceMappingURL=MetricsManager.d.ts.map