/** * 性能指标收集系统 * 收集请求数、响应时间、错误率等指标 */ export interface MetricValue { value: number; timestamp: number; labels?: Record; } export interface Metric { name: string; type: "counter" | "gauge" | "histogram"; help: string; values: MetricValue[]; labels?: Record; } /** * 指标收集器 */ export declare class MetricsCollector { private metrics; private readonly maxSamples; /** * 增加计数器 */ increment(name: string, value?: number, labels?: Record): void; /** * 设置仪表值 */ set(name: string, value: number, labels?: Record): void; /** * 记录直方图值 */ observe(name: string, value: number, labels?: Record): void; /** * 获取或创建指标 */ private getOrCreateMetric; /** * 获取指标键 */ private getMetricKey; /** * 修剪样本数量 */ private trimSamples; /** * 获取指标 */ getMetric(name: string, labels?: Record): Metric | undefined; /** * 获取所有指标 */ getAllMetrics(): Metric[]; /** * 获取最新值 */ getLatestValue(name: string, labels?: Record): number | undefined; /** * 计算平均值 */ getAverage(name: string, labels?: Record, windowMs?: number): number | undefined; /** * 计算总和 */ getSum(name: string, labels?: Record, windowMs?: number): number | undefined; /** * 导出为 Prometheus 格式 */ exportPrometheus(): string; /** * 清理过期数据 */ cleanup(maxAge?: number): void; /** * 重置所有指标 */ reset(): void; } export declare const metrics: MetricsCollector;