openlit
Version:
OpenTelemetry-native Auto instrumentation library for monitoring LLM Applications, facilitating the integration of observability into your GenAI-driven projects
25 lines (24 loc) • 1.67 kB
TypeScript
import { MeterProvider, PeriodicExportingMetricReader } from '@opentelemetry/sdk-metrics';
import { metrics } from '@opentelemetry/api';
import { SetupMetricsOptions } from '../types';
export default class Metrics {
static meterProvider: MeterProvider;
static meter: ReturnType<typeof metrics.getMeter>;
static metricReaders: PeriodicExportingMetricReader[];
static genaiClientUsageTokens: ReturnType<ReturnType<typeof metrics.getMeter>['createHistogram']>;
static genaiClientOperationDuration: ReturnType<ReturnType<typeof metrics.getMeter>['createHistogram']>;
static genaiServerTbt: ReturnType<ReturnType<typeof metrics.getMeter>['createHistogram']>;
static genaiServerTtft: ReturnType<ReturnType<typeof metrics.getMeter>['createHistogram']>;
static genaiClientTimeToFirstChunk: ReturnType<ReturnType<typeof metrics.getMeter>['createHistogram']>;
static genaiClientTimePerOutputChunk: ReturnType<ReturnType<typeof metrics.getMeter>['createHistogram']>;
static genaiServerRequestDuration: ReturnType<ReturnType<typeof metrics.getMeter>['createHistogram']>;
static dbClientOperationDuration: ReturnType<ReturnType<typeof metrics.getMeter>['createHistogram']>;
static genaiCost: ReturnType<ReturnType<typeof metrics.getMeter>['createHistogram']>;
static dbRequests: ReturnType<ReturnType<typeof metrics.getMeter>['createCounter']>;
static initializeMetrics(): void;
static setup(options: SetupMetricsOptions): import("@opentelemetry/api").Meter | null;
private static buildMetricReaders;
private static createOTLPReader;
private static createConsoleReader;
static resetForTesting(): void;
}