pandora-metrics
Version:
## Overview
58 lines (57 loc) • 2.62 kB
TypeScript
import { MetricName } from './MetricName';
import { MetricSet } from './MetricSet';
import { BaseGauge } from './metrics/Gauge';
import { ICounter } from './metrics/Counter';
import { IHistogram } from './metrics/Histogram';
import { IMeter } from './metrics/Meter';
import { ITimer } from './metrics/Timer';
import { MetricFilter } from './MetricFilter';
import { ReservoirType } from './Reservoir';
import { Metric } from './domain';
import { IFastCompass } from './metrics/FastCompass';
export interface IMetricsRegistry {
register(name: MetricName, metric: Metric): Metric;
registerAll(prefix: any, metrics?: MetricSet): any;
getKeys(): any;
counter(name: MetricName): ICounter;
histogram(name: MetricName): IHistogram;
meter(name: MetricName): IMeter;
timer(name: MetricName): ITimer;
fastCompass(name: MetricName): IFastCompass;
getMetric(name: MetricName): Metric;
getMetrics(metricType?: string, filter?: MetricFilter): any;
getGauges(filter?: MetricFilter): Map<string, BaseGauge<any>>;
getCounters(filter?: MetricFilter): Map<string, ICounter>;
getHistograms(filter?: MetricFilter): Map<string, IHistogram>;
getMeters(filter?: MetricFilter): Map<string, IMeter>;
getTimers(filter?: MetricFilter): Map<string, ITimer>;
getFastCompasses(filter?: MetricFilter): Map<string, IFastCompass>;
getMetricNames(): any;
remove(metricsKey: string): any;
}
export declare class MetricsRegistry implements IMetricsRegistry {
clientId: string;
metricsSet: Map<string, {
name: MetricName;
metric: Metric;
}>;
register(name: MetricName, metric: Metric): Metric;
registerAll(prefix?: MetricName, metrics?: MetricSet): void;
getKeys(): string[];
counter(name: MetricName): ICounter;
histogram(name: MetricName): IHistogram;
meter(name: MetricName): IMeter;
timer(name: MetricName): ITimer;
fastCompass(name: MetricName): IFastCompass;
protected getOrAdd(name: MetricName, builder: any, type?: ReservoirType): Metric;
getMetric(name: MetricName): Metric;
getMetrics(metricType?: string, filter?: MetricFilter): Map<string, Metric>;
getGauges(filter?: MetricFilter): Map<string, BaseGauge<any>>;
getCounters(filter?: MetricFilter): Map<string, ICounter>;
getHistograms(filter?: MetricFilter): Map<string, IHistogram>;
getMeters(filter?: MetricFilter): Map<string, IMeter>;
getTimers(filter?: MetricFilter): Map<string, ITimer>;
getFastCompasses(filter?: MetricFilter): Map<string, IFastCompass>;
getMetricNames(): any[];
remove(metricsKey: string): void;
}