UNPKG

unleash-server

Version:

Unleash is an enterprise ready feature flag service. It provides different strategies for handling feature flags.

42 lines 2.24 kB
import type { IUnleashConfig } from '../../../types/index.js'; import type { IUnleashStores } from '../../../types/index.js'; import type { ToggleMetricsSummary } from '../../../types/models/metrics.js'; import type { IClientMetricsEnv } from './client-metrics-store-v2-type.js'; import { type IApiUser } from '../../../types/api-user.js'; import type { IUser } from '../../../types/user.js'; import type { LastSeenService } from '../last-seen/last-seen-service.js'; import type { ClientMetricsSchema } from '../../../../lib/openapi/index.js'; import type { UnknownFlagsService } from '../unknown-flags/unknown-flags-service.js'; import { type Metric } from '../impact/metrics-translator.js'; export default class ClientMetricsServiceV2 { private config; private unsavedMetrics; private clientMetricsStoreV2; private lastSeenService; private unknownFlagsService; private flagResolver; private logger; private impactMetricsTranslator; private cachedFeatureNames; constructor({ clientMetricsStoreV2 }: Pick<IUnleashStores, 'clientMetricsStoreV2'>, config: IUnleashConfig, lastSeenService: LastSeenService, unknownFlagsService: UnknownFlagsService); clearMetrics(hoursAgo: number): Promise<void>; clearDailyMetrics(daysAgo: number): Promise<void>; aggregateDailyMetrics(): Promise<void>; filterExistingToggleNames(toggleNames: string[]): Promise<{ validatedToggleNames: string[]; unknownToggleNames: string[]; }>; filterValidToggleNames(toggleNames: string[]): Promise<string[]>; private siftMetrics; registerBulkMetrics(metrics: IClientMetricsEnv[]): Promise<void>; registerImpactMetrics(impactMetrics: Metric[]): Promise<void>; registerClientMetrics(data: ClientMetricsSchema, clientIp: string): Promise<void>; bulkAdd(): Promise<void>; getFeatureToggleMetricsSummary(featureName: string): Promise<ToggleMetricsSummary>; getClientMetricsForToggle(featureName: string, hoursBack?: number): Promise<IClientMetricsEnv[]>; resolveMetricsEnvironment(user: IUser | IApiUser, data: { environment?: string; }): string; resolveUserEnvironment(user: IUser | IApiUser): string; } //# sourceMappingURL=metrics-service-v2.d.ts.map