diff --git a/src/app/application-frame/application-frame.component.ts b/src/app/application-frame/application-frame.component.ts index 04e7a26b1..b69f8fc0a 100644 --- a/src/app/application-frame/application-frame.component.ts +++ b/src/app/application-frame/application-frame.component.ts @@ -1,8 +1,8 @@ -import { ChangeDetectionStrategy, Component } from '@angular/core'; +import { ChangeDetectionStrategy, Component, OnInit } from '@angular/core'; import { IconType } from '@hypertrace/assets-library'; import { LayoutChangeService } from '@hypertrace/common'; import { IconSize } from '@hypertrace/components'; - +import { UserTelemetryOrchestrationService } from '../shared/telemetry/user-telemetry-orchestration.service'; @Component({ selector: 'ht-application-frame', styleUrls: ['./application-frame.component.scss'], @@ -22,4 +22,10 @@ import { IconSize } from '@hypertrace/components'; ` }) -export class ApplicationFrameComponent {} +export class ApplicationFrameComponent implements OnInit { + public constructor(private readonly userTelemetryOrchestrationService: UserTelemetryOrchestrationService) {} + + public ngOnInit(): void { + this.userTelemetryOrchestrationService.initialize(); + } +} diff --git a/src/app/shared/telemetry/user-telemetry-orchestration.service.ts b/src/app/shared/telemetry/user-telemetry-orchestration.service.ts new file mode 100644 index 000000000..8f2828923 --- /dev/null +++ b/src/app/shared/telemetry/user-telemetry-orchestration.service.ts @@ -0,0 +1,18 @@ +import { Injectable } from '@angular/core'; +import { UserTelemetryService } from '@hypertrace/common'; + +@Injectable({ + providedIn: 'root' +}) +export class UserTelemetryOrchestrationService { + public constructor(private readonly userTelemetryService: UserTelemetryService) {} + + public initialize(): void { + this.userTelemetryService.initialize(); + + /** + * To Identify user or keep it anonymous, please call this.userTelemetryService.identify() + * to identify the user. + */ + } +}