realm-object-server
Version:
37 lines (36 loc) • 1.66 kB
TypeScript
import { StatsLabels } from "./StatsLabels";
import { StatsStorage, LabelledValue } from "./StatsStorage";
import { StatsSink, StatsMetricParams, StatsCounter, StatsGauge } from "./StatsSink";
import { StatsHistogram, StatsTimerCallback } from "./index";
export declare class StandaloneStatsMetric {
readonly name: string;
readonly help: string;
readonly labelNames: string[];
private values;
constructor(params: StatsMetricParams);
getInstantValues(labels: StatsLabels): LabelledValue[];
protected getValue(labels: StatsLabels): LabelledValue;
private getValuesAsArray;
private testLabels;
private checkLabelNames;
private generateLabelHash;
}
export declare class StandaloneStatsCounter extends StandaloneStatsMetric implements StatsCounter {
inc(labels: StatsLabels, value?: number): void;
reset(labels: StatsLabels, value?: number): void;
}
export declare class StandaloneStatsGauge extends StandaloneStatsCounter implements StatsGauge {
dec(labels: StatsLabels, value?: number): void;
set(labels: StatsLabels, value: number): void;
}
export declare class StandaloneStatsHistogram extends StandaloneStatsMetric implements StatsHistogram {
observe(labels: StatsLabels, value: number): void;
startTimer(labels: StatsLabels): StatsTimerCallback;
}
export declare class StandaloneStats implements StatsSink, StatsStorage {
private metrics;
counter(params: StatsMetricParams): StatsCounter;
gauge(params: StatsMetricParams): StatsGauge;
histogram(params: StatsMetricParams): StatsHistogram;
getInstantValues(name: string, labels?: StatsLabels): Promise<LabelledValue[]>;
}