unleash-server
Version:
Unleash is an enterprise ready feature toggles service. It provides different strategies for handling feature toggles.
26 lines (25 loc) • 1.3 kB
TypeScript
import { IUnleashConfig } from '../../server-impl';
import { IUnleashStores } from '../../types';
import { IClientApp } from '../../types/model';
import { ToggleMetricsSummary } from '../../types/models/metrics';
import { IClientMetricsEnv } from '../../types/stores/client-metrics-store-v2';
import ApiUser from '../../types/api-user';
import User from '../../types/user';
import { LastSeenService } from './last-seen-service';
export default class ClientMetricsServiceV2 {
private config;
private timers;
private unsavedMetrics;
private clientMetricsStoreV2;
private featureToggleStore;
private lastSeenService;
private flagResolver;
private logger;
constructor({ featureToggleStore, clientMetricsStoreV2, }: Pick<IUnleashStores, 'featureToggleStore' | 'clientMetricsStoreV2'>, config: IUnleashConfig, lastSeenService: LastSeenService, bulkInterval?: number);
registerClientMetrics(data: IClientApp, clientIp: string): Promise<void>;
bulkAdd(): Promise<void>;
getFeatureToggleMetricsSummary(featureName: string): Promise<ToggleMetricsSummary>;
getClientMetricsForToggle(featureName: string, hoursBack?: number): Promise<IClientMetricsEnv[]>;
resolveMetricsEnvironment(user: User | ApiUser, data: IClientApp): string;
destroy(): void;
}