realm-object-server
Version:
25 lines (24 loc) • 857 B
TypeScript
import { StatsLabels } from "./StatsLabels";
export interface StatsCounter {
inc: (labels: StatsLabels, value?: number) => void;
reset: (labels: StatsLabels) => void;
}
export interface StatsGauge extends StatsCounter {
dec: (labels: StatsLabels, value?: number) => void;
set: (labels: StatsLabels, value: number) => void;
}
export declare type StatsTimerCallback = () => void;
export interface StatsHistogram {
startTimer: (labels: StatsLabels) => StatsTimerCallback;
observe: (labels: StatsLabels, value: number) => void;
}
export interface StatsMetricParams {
name: string;
help: string;
labelNames?: string[];
}
export interface StatsSink {
counter: (params: StatsMetricParams) => StatsCounter;
gauge: (params: StatsMetricParams) => StatsGauge;
histogram: (params: StatsMetricParams) => StatsHistogram;
}