Skip to content

Commit ec64f4f

Browse files
authored
Wire up app check provider to telemetry service (#9239)
1 parent 50a3bf4 commit ec64f4f

File tree

3 files changed

+19
-3
lines changed

3 files changed

+19
-3
lines changed

packages/telemetry/src/register.node.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,9 @@ export function registerTelemetry(): void {
3030
// getImmediate for FirebaseApp will always succeed
3131
const app = container.getProvider('app').getImmediate();
3232
const loggerProvider = createLoggerProvider();
33+
const appCheckProvider = container.getProvider('app-check-internal');
3334

34-
return new TelemetryService(app, loggerProvider);
35+
return new TelemetryService(app, loggerProvider, appCheckProvider);
3536
},
3637
ComponentType.PUBLIC
3738
)

packages/telemetry/src/register.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,9 @@ export function registerTelemetry(): void {
3030
// getImmediate for FirebaseApp will always succeed
3131
const app = container.getProvider('app').getImmediate();
3232
const loggerProvider = createLoggerProvider();
33+
const appCheckProvider = container.getProvider('app-check-internal');
3334

34-
return new TelemetryService(app, loggerProvider);
35+
return new TelemetryService(app, loggerProvider, appCheckProvider);
3536
},
3637
ComponentType.PUBLIC
3738
)

packages/telemetry/src/service.ts

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,23 @@
1818
import { _FirebaseService, FirebaseApp } from '@firebase/app';
1919
import { Telemetry } from './public-types';
2020
import { LoggerProvider } from '@opentelemetry/sdk-logs';
21+
import { Provider } from '@firebase/component';
22+
import {
23+
AppCheckInternalComponentName,
24+
FirebaseAppCheckInternal
25+
} from '@firebase/app-check-interop-types';
2126

2227
export class TelemetryService implements Telemetry, _FirebaseService {
23-
constructor(public app: FirebaseApp, public loggerProvider: LoggerProvider) {}
28+
appCheck: FirebaseAppCheckInternal | null;
29+
30+
constructor(
31+
public app: FirebaseApp,
32+
public loggerProvider: LoggerProvider,
33+
appCheckProvider?: Provider<AppCheckInternalComponentName>
34+
) {
35+
const appCheck = appCheckProvider?.getImmediate({ optional: true });
36+
this.appCheck = appCheck || null;
37+
}
2438

2539
_delete(): Promise<void> {
2640
return Promise.resolve();

0 commit comments

Comments
 (0)