feat(server): job metrics (#8255)

* metric repo

* add metric repo

* remove unused import

* formatting

* fix

* try disabling job metrics for e2e

* import otel in test module
This commit is contained in:
Mert
2024-03-24 23:02:04 -04:00
committed by GitHub
parent 1855aaea99
commit c58a70ac8f
7 changed files with 83 additions and 6 deletions

View File

@@ -0,0 +1,31 @@
import { Inject } from '@nestjs/common';
import { MetricService } from 'nestjs-otel';
import { CustomMetricOptions, IMetricRepository } from 'src/interfaces/metric.interface';
export class MetricRepository implements IMetricRepository {
constructor(@Inject(MetricService) private readonly metricService: MetricService) {}
addToCounter(name: string, value: number, options?: CustomMetricOptions): void {
if (options?.enabled === false) {
return;
}
this.metricService.getCounter(name, options).add(value);
}
updateGauge(name: string, value: number, options?: CustomMetricOptions): void {
if (options?.enabled === false) {
return;
}
this.metricService.getUpDownCounter(name, options).add(value);
}
updateHistogram(name: string, value: number, options?: CustomMetricOptions): void {
if (options?.enabled === false) {
return;
}
this.metricService.getHistogram(name, options).record(value);
}
}