Skip to content

Commit d5eaa45

Browse files
committed
Initialize Telemetry in Angular error handler constructor
1 parent 518ad48 commit d5eaa45

File tree

1 file changed

+8
-7
lines changed

1 file changed

+8
-7
lines changed

packages/telemetry/src/angular/index.ts

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ import { ErrorHandler, inject } from '@angular/core';
2121
import { ActivatedRouteSnapshot, Router } from '@angular/router';
2222
import { registerTelemetry } from '../register';
2323
import { captureError, getTelemetry } from '../api';
24-
import { TelemetryOptions } from '../public-types';
24+
import { Telemetry, TelemetryOptions } from '../public-types';
2525
import { FirebaseApp } from '@firebase/app';
2626

2727
registerTelemetry();
@@ -79,20 +79,21 @@ export * from '../public-types';
7979
*/
8080
export class FirebaseErrorHandler implements ErrorHandler {
8181
private readonly router = inject(Router);
82+
private readonly telemetry: Telemetry;
8283

8384
constructor(
84-
private app: FirebaseApp,
85-
private telemetryOptions?: TelemetryOptions
86-
) {}
85+
app: FirebaseApp,
86+
telemetryOptions?: TelemetryOptions
87+
) {
88+
this.telemetry = getTelemetry(app, telemetryOptions);
89+
}
8790

8891
handleError(error: unknown): void {
89-
const telemetry = getTelemetry(this.app, this.telemetryOptions);
90-
9192
const attributes = {
9293
'angular_route_path': this.getSafeRoutePath(this.router)
9394
};
9495

95-
captureError(telemetry, error, attributes);
96+
captureError(this.telemetry, error, attributes);
9697
}
9798

9899
/**

0 commit comments

Comments
 (0)