diff --git a/desktop/flipper-server-core/src/comms/ServerController.tsx b/desktop/flipper-server-core/src/comms/ServerController.tsx index 79c09baac..4d04fc376 100644 --- a/desktop/flipper-server-core/src/comms/ServerController.tsx +++ b/desktop/flipper-server-core/src/comms/ServerController.tsx @@ -282,7 +282,6 @@ export class ServerController this.timestamps.set(id, { insecureStart: Date.now(), }); - this.logger.track('usage', 'untrusted-request-handler-called', clientQuery); tracker.track('app-connection-insecure-attempt', clientQuery); @@ -302,7 +301,6 @@ export class ServerController appDirectory: string, medium: CertificateExchangeMedium, ): Promise<{deviceId: string}> { - // TODO: track CSR processing. let certificateProvider: CertificateProvider; switch (clientQuery.os) { case 'Android': { @@ -375,9 +373,20 @@ export class ServerController }, 30 * 1000), ); + tracker.track('app-connection-certificate-exchange', { + ...clientQuery, + successful: true, + device_id: response.deviceId, + }); + resolve(response); }) - .catch((error) => { + .catch((error: Error) => { + tracker.track('app-connection-certificate-exchange', { + ...clientQuery, + successful: false, + error: error.message, + }); reject(error); }); }); diff --git a/desktop/flipper-server-core/src/utils/tracker.tsx b/desktop/flipper-server-core/src/utils/tracker.tsx index 9cf1bbed5..57f49ee0f 100644 --- a/desktop/flipper-server-core/src/utils/tracker.tsx +++ b/desktop/flipper-server-core/src/utils/tracker.tsx @@ -17,6 +17,11 @@ type AppConnectionPayload = { medium?: number | undefined; }; +type AppConnectionCertificateExchangePayload = AppConnectionPayload & { + successful: boolean; + error?: string; +}; + type TrackerEvents = { 'server-started': {port: number; tcp: boolean}; 'server-auth-token-verification': { @@ -29,6 +34,7 @@ type TrackerEvents = { 'app-connection-created': AppConnectionPayload; 'app-connection-secure-attempt': AppConnectionPayload; 'app-connection-insecure-attempt': AppConnectionPayload; + 'app-connection-certificate-exchange': AppConnectionCertificateExchangePayload; }; class ServerCoreTracker {