UNPKG

pandora-metrics

Version:
84 lines (83 loc) 3.48 kB
import { MessengerClient } from 'pandora-messenger'; import { MetricsMessengerServer } from './util/MessengerUtil'; import { Metric, MetricFilter, MetricsManager, MetricName, BaseGauge, ICounter } from './common/index'; import { ProxyCreateMessage, ProxyUpdateMessage } from './domain'; import { AbstractIndicator } from './indicator/AbstractIndicator'; import { IMeter } from './common/metrics/Meter'; import { IHistogram } from './common/metrics/Histogram'; import { ITimer } from './common/metrics/Timer'; import { IMetricsRegistry } from './common/MetricsRegistry'; export declare class MetricsServerManager extends AbstractIndicator implements MetricsManager { messengerServer: MetricsMessengerServer; metricsClients: Map<string, MessengerClient>; allMetricsRegistry: IMetricsRegistry; metricRegistryMap: Map<string, IMetricsRegistry>; metricsAndClientMap: Map<string, Array<string>>; clientId: string; logger: any; enabled: boolean; group: string; debug: any; static instance: any; static getInstance(): any; constructor(); /** * 注册客户端 * @param data * @param reply * @param client */ protected registerClient(data: { appName; clientId; }, reply: any, client: any): void; protected buildReportLink(client: any): void; protected bindRemove(client: any): void; private removeMetricInRegistry(registry, storeMetricsArr); /** * 注册一个 metric * * @param data */ protected registerMetric(data: ProxyCreateMessage): any; protected updateMetric(data: ProxyUpdateMessage): void; /** * 创建一个 Gauge 类型的代理实例 * @param metricName * @returns {any} */ protected createGaugeProxy(metricName: any): BaseGauge<any>; /** * 对客户端的调用,现在用于 Gauge 类型的获取值 * @param args * @returns {Promise<void>} */ invoke(args?: any): Promise<{}>; getClients(): Array<MessengerClient>; getClient(clientId: string): MessengerClient; getMetric(name: MetricName): Metric; getAllMetricsRegistry(): IMetricsRegistry; destroy(): void; register(group: string, name: MetricName | string, metric: Metric): void; getMetricRegistryByGroup(group: string): IMetricsRegistry; hasMetricRegistryByGroup(group: string): boolean; getGauges(group: string, filter?: MetricFilter): Map<string, BaseGauge<any>>; getCounters(group: string, filter?: MetricFilter): Map<string, ICounter>; getHistograms(group: string, filter?: MetricFilter): Map<string, IHistogram>; getMeters(group: string, filter?: MetricFilter): Map<string, IMeter>; getTimers(group: string, filter?: MetricFilter): Map<string, ITimer>; getMetrics(group: string): Map<string, Metric>; getCategoryMetrics(group: string, filter?: MetricFilter): Map<string, Map<string, Metric>>; getAllCategoryMetrics(filter?: MetricFilter): Map<string, Map<string, Metric>>; listMetricGroups(): string[]; isEnabled(): boolean; setEnabled(enabled: any): void; setLogger(logger: any): void; listMetricNamesByGroup(): Map<any, any>; getMeter(group: string, name: MetricName): IMeter; getCounter(group: string, name: MetricName): ICounter; getHistogram(group: string, name: MetricName): IHistogram; getTimer(group: string, name: MetricName): ITimer; destory(): void; getNewMetricRegistry(): IMetricsRegistry; }