Skip to content

Commit 2dfb0a1

Browse files
committed
fix: always handle process rejections
1 parent 9022a61 commit 2dfb0a1

File tree

3 files changed

+10
-5
lines changed

3 files changed

+10
-5
lines changed

src/logger.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ export const LogId = {
1717
telemetryEmitFailure: mongoLogId(1_002_002),
1818
telemetryEmitStart: mongoLogId(1_002_003),
1919
telemetryEmitSuccess: mongoLogId(1_002_004),
20-
telemetryMachineIdFailure: mongoLogId(1_002_005),
20+
telemetryDeviceIdFailure: mongoLogId(1_002_005),
2121

2222
toolExecute: mongoLogId(1_003_001),
2323
toolExecuteFailure: mongoLogId(1_003_002),

src/telemetry/telemetry.ts

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,12 @@ export class Telemetry {
4040

4141
private async start(): Promise<void> {
4242
this.deviceIdPromise = DeferredPromise.fromPromise(this.getDeviceId());
43-
this.commonProperties.device_id = await this.deviceIdPromise;
43+
try {
44+
this.commonProperties.device_id = await this.deviceIdPromise;
45+
} catch (error) {
46+
logger.debug(LogId.telemetryDeviceIdFailure, "telemetry", String(error));
47+
this.commonProperties.device_id = "unknown";
48+
}
4449

4550
this.isBufferingEvents = false;
4651
}
@@ -72,7 +77,7 @@ export class Telemetry {
7277
hmac.update(DEVICE_ID_HASH_MESSAGE);
7378
return hmac.digest("hex");
7479
} catch (error) {
75-
logger.debug(LogId.telemetryMachineIdFailure, "telemetry", String(error));
80+
logger.debug(LogId.telemetryDeviceIdFailure, "telemetry", String(error));
7681
return "unknown";
7782
}
7883
}

tests/unit/telemetry.test.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -284,7 +284,7 @@ describe("Telemetry", () => {
284284
expect(telemetry.getCommonProperties().device_id).toBe("unknown");
285285

286286
expect(loggerSpy).toHaveBeenCalledWith(
287-
LogId.telemetryMachineIdFailure,
287+
LogId.telemetryDeviceIdFailure,
288288
"telemetry",
289289
"Error: Failed to get device ID"
290290
);
@@ -315,7 +315,7 @@ describe("Telemetry", () => {
315315
expect(telemetry.getCommonProperties().device_id).toBe("unknown");
316316
expect(telemetry["isBufferingEvents"]).toBe(false);
317317
expect(loggerSpy).toHaveBeenCalledWith(
318-
LogId.telemetryMachineIdFailure,
318+
LogId.telemetryDeviceIdFailure,
319319
"telemetry",
320320
"Error: Promise timed out"
321321
);

0 commit comments

Comments
 (0)