UNPKG

1.27 kBTypeScriptView Raw
1import TelemetryEvent from "./TelemetryEvent";
2import { TelemetryConfig, TelemetryEmitter } from "./TelemetryTypes";
3import ApiEvent, { API_EVENT_IDENTIFIER } from "./ApiEvent";
4import { Logger } from "../Logger";
5import HttpEvent from "./HttpEvent";
6export default class TelemetryManager {
7 private completedEvents;
8 private inProgressEvents;
9 private eventCountByCorrelationId;
10 private onlySendFailureTelemetry;
11 private telemetryPlatform;
12 private clientId;
13 private telemetryEmitter;
14 private logger;
15 constructor(config: TelemetryConfig, telemetryEmitter: TelemetryEmitter, logger: Logger);
16 static getTelemetrymanagerStub(clientId: string, logger: Logger): TelemetryManager;
17 startEvent(event: TelemetryEvent): void;
18 stopEvent(event: TelemetryEvent): void;
19 flush(correlationId: string): void;
20 createAndStartApiEvent(correlationId: string, apiEventIdentifier: API_EVENT_IDENTIFIER): ApiEvent;
21 stopAndFlushApiEvent(correlationId: string, apiEvent: ApiEvent, wasSuccessful: boolean, errorCode?: string): void;
22 createAndStartHttpEvent(correlation: string, httpMethod: string, url: string, eventLabel: string): HttpEvent;
23 private incrementEventCount;
24 private getOrphanedEvents;
25}