n8n
Version:
n8n Workflow Automation Tool
30 lines (29 loc) • 1.15 kB
TypeScript
import type express from 'express';
import { CacheService } from '../services/cache/cache.service';
import { MessageEventBus } from '../eventbus/MessageEventBus/MessageEventBus';
import type { MetricCategory, MetricLabel } from './types';
import { GlobalConfig } from '@n8n/config';
export declare class PrometheusMetricsService {
private readonly cacheService;
private readonly eventBus;
private readonly globalConfig;
constructor(cacheService: CacheService, eventBus: MessageEventBus, globalConfig: GlobalConfig);
private readonly counters;
private readonly prefix;
private readonly includes;
init(app: express.Application): Promise<void>;
enableMetric(metric: MetricCategory): void;
disableMetric(metric: MetricCategory): void;
disableAllMetrics(): void;
enableLabels(labels: MetricLabel[]): void;
disableAllLabels(): void;
private initN8nVersionMetric;
private initDefaultMetrics;
private initRouteMetrics;
private mountMetricsEndpoint;
private addPrefixToMetrics;
private initCacheMetrics;
private toCounter;
private initEventBusMetrics;
private toLabels;
}