UNPKG

@message-queue-toolkit/metrics

Version:

Utilities for collecting metrics in message-queue-toolkit

11 lines (10 loc) 874 B
import type { ProcessedMessageMetadata } from '@message-queue-toolkit/core'; import type { Histogram } from 'prom-client'; import type promClient from 'prom-client'; import { PrometheusMessageMetric } from '../../PrometheusMessageMetric.ts'; import type { PrometheusMetricParams } from '../../types.ts'; export declare abstract class PrometheusMessageTimeMetric<MessagePayload extends object> extends PrometheusMessageMetric<MessagePayload, Histogram<'messageType' | 'version' | 'queue' | 'result'>> { protected createMetric(client: typeof promClient, metricParams: PrometheusMetricParams<MessagePayload>): Histogram<'messageType' | 'version' | 'queue' | 'result'>; registerProcessedMessage(metadata: ProcessedMessageMetadata<MessagePayload>): void; protected abstract calculateObservedValue(metadata: ProcessedMessageMetadata<MessagePayload>): number | null; }