unleash-server
Version:
Unleash is an enterprise ready feature flag service. It provides different strategies for handling feature flags.
45 lines • 1.38 kB
TypeScript
import { Counter, Gauge, type Registry } from 'prom-client';
import { BatchHistogram } from './batch-histogram.js';
export interface NumericMetricSample {
labels?: Record<string, string | number>;
value: number;
}
export interface BucketMetricSample {
labels?: Record<string, string | number>;
count: number;
sum: number;
buckets: Array<{
le: number | '+Inf';
count: number;
}>;
}
export interface NumericMetric {
name: string;
help: string;
type: 'counter' | 'gauge';
samples: NumericMetricSample[];
}
export interface BucketMetric {
name: string;
help: string;
type: 'histogram';
samples: BucketMetricSample[];
}
export type Metric = NumericMetric | BucketMetric;
export declare class MetricsTranslator {
private registry;
constructor(registry: Registry);
sanitizeName(name: string): string;
private hasNewLabels;
private hasNewBuckets;
private buildLabels;
private resolveCounter;
private resolveGauge;
private resolveHistogram;
private collectLabelNames;
translateMetric(metric: Metric): Counter<string> | Gauge<string> | BatchHistogram | null;
translateMetrics(metrics: Metric[]): Registry;
serializeMetrics(): Promise<string>;
translateAndSerializeMetrics(metrics: Metric[]): Promise<string>;
}
//# sourceMappingURL=metrics-translator.d.ts.map