2024-03-24 23:02:04 -04:00
|
|
|
import { MetricOptions } from '@opentelemetry/api';
|
|
|
|
|
|
2024-03-25 19:15:11 -04:00
|
|
|
export const IMetricRepository = 'IMetricRepository';
|
|
|
|
|
|
|
|
|
|
export interface MetricGroupOptions {
|
|
|
|
|
enabled: boolean;
|
2024-03-24 23:02:04 -04:00
|
|
|
}
|
|
|
|
|
|
2024-03-25 19:15:11 -04:00
|
|
|
export interface IMetricGroupRepository {
|
|
|
|
|
addToCounter(name: string, value: number, options?: MetricOptions): void;
|
|
|
|
|
addToGauge(name: string, value: number, options?: MetricOptions): void;
|
|
|
|
|
addToHistogram(name: string, value: number, options?: MetricOptions): void;
|
|
|
|
|
configure(options: MetricGroupOptions): this;
|
|
|
|
|
}
|
2024-03-24 23:02:04 -04:00
|
|
|
|
|
|
|
|
export interface IMetricRepository {
|
2024-03-25 19:15:11 -04:00
|
|
|
api: IMetricGroupRepository;
|
|
|
|
|
host: IMetricGroupRepository;
|
|
|
|
|
jobs: IMetricGroupRepository;
|
|
|
|
|
repo: IMetricGroupRepository;
|
2024-03-24 23:02:04 -04:00
|
|
|
}
|