Skip to content

Commit 3cfd63b

Browse files
committed
chore(ui-tars): fix logger output for auth and proxy client
1 parent ee8bde8 commit 3cfd63b

File tree

2 files changed

+86
-45
lines changed

2 files changed

+86
-45
lines changed

apps/ui-tars/src/main/agent/proxyClient.ts

Lines changed: 80 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
*/
55
import { getAuthHeader, registerDevice } from '../auth';
66
import { PROXY_URL, BROWSER_URL, TIME_URL } from '../constant';
7+
import { logger } from '../logger';
78

89
const FREE_TRIAL_DURATION_MS = 30 * 60 * 1000;
910

@@ -26,7 +27,7 @@ async function fetchWithAuth(
2627
return response.json();
2728
} catch (error) {
2829
if (retries <= 0) throw error;
29-
console.error(`[proxyClient] Retrying request...`);
30+
logger.error(`[proxyClient] Retrying request...`);
3031
return fetchWithAuth(url, options, retries - 1);
3132
}
3233
}
@@ -49,9 +50,12 @@ export class RemoteComputer {
4950
PositionY: y,
5051
}),
5152
});
52-
console.log('Move Mouse Response:', data);
53+
logger.log('[RemoteComputer] Move Mouse Response:', data);
5354
} catch (error) {
54-
console.error('Move Mouse Error:', (error as Error).message);
55+
logger.error(
56+
'[RemoteComputer] Move Mouse Error:',
57+
(error as Error).message,
58+
);
5559
throw error;
5660
}
5761
}
@@ -76,9 +80,12 @@ export class RemoteComputer {
7680
Release: release,
7781
}),
7882
});
79-
console.log('Click Mouse Response:', data);
83+
logger.log('[RemoteComputer] Click Mouse Response:', data);
8084
} catch (error) {
81-
console.error('Click Mouse Error:', (error as Error).message);
85+
logger.error(
86+
'[RemoteComputer] Click Mouse Error:',
87+
(error as Error).message,
88+
);
8289
throw error;
8390
}
8491
}
@@ -101,9 +108,12 @@ export class RemoteComputer {
101108
TargetY: targetY,
102109
}),
103110
});
104-
console.log('Drag Mouse Response:', data);
111+
logger.log('[RemoteComputer] Drag Mouse Response:', data);
105112
} catch (error) {
106-
console.error('Drag Mouse Error:', (error as Error).message);
113+
logger.error(
114+
'[RemoteComputer] Drag Mouse Error:',
115+
(error as Error).message,
116+
);
107117
throw error;
108118
}
109119
}
@@ -118,9 +128,12 @@ export class RemoteComputer {
118128
Key: key,
119129
}),
120130
});
121-
console.log('Press Key Response:', data);
131+
logger.log('[RemoteComputer] Press Key Response:', data);
122132
} catch (error) {
123-
console.error('Press Key Error:', (error as Error).message);
133+
logger.error(
134+
'[RemoteComputer] Press Key Error:',
135+
(error as Error).message,
136+
);
124137
throw error;
125138
}
126139
}
@@ -135,9 +148,12 @@ export class RemoteComputer {
135148
Text: text,
136149
}),
137150
});
138-
console.log('Type Text Response:', data);
151+
logger.log('[RemoteComputer] Type Text Response:', data);
139152
} catch (error) {
140-
console.error('Type Text Error:', (error as Error).message);
153+
logger.error(
154+
'[RemoteComputer] Type Text Error:',
155+
(error as Error).message,
156+
);
141157
throw error;
142158
}
143159
}
@@ -160,9 +176,9 @@ export class RemoteComputer {
160176
Amount: Math.min(amount, 10),
161177
}),
162178
});
163-
console.log('Scroll Response:', data);
179+
logger.log('[RemoteComputer] Scroll Response:', data);
164180
} catch (error) {
165-
console.error('Scroll Error:', (error as Error).message);
181+
logger.error('[RemoteComputer] Scroll Error:', (error as Error).message);
166182
throw error;
167183
}
168184
}
@@ -180,12 +196,15 @@ export class RemoteComputer {
180196
const { Result } = data;
181197
if (Result) {
182198
const { Width, Height } = Result;
183-
console.log('Screen size:', Result);
199+
logger.log('[RemoteComputer] Screen size:', Result);
184200
return { width: Width, height: Height };
185201
}
186202
throw new Error('Failed to get screen size');
187203
} catch (error) {
188-
console.error('Get Screen Size Error:', (error as Error).message);
204+
logger.error(
205+
'[RemoteComputer] Get Screen Size Error:',
206+
(error as Error).message,
207+
);
189208
throw error;
190209
}
191210
}
@@ -204,8 +223,8 @@ export class RemoteComputer {
204223
const duration = endTime - startTime;
205224

206225
const { ResponseMetadata, Result } = data;
207-
console.log('Take Screenshot Response:', ResponseMetadata);
208-
console.log('The time consumed:', duration, 'ms');
226+
logger.log('[RemoteComputer] TakeScreenshot Response:', ResponseMetadata);
227+
logger.log('[RemoteComputer] The time consumed:', duration, 'ms');
209228

210229
if (Result?.Screenshot) {
211230
const base64Data = Result.Screenshot.replace(
@@ -216,7 +235,10 @@ export class RemoteComputer {
216235
}
217236
throw new Error('Screenshot data not found in response');
218237
} catch (error) {
219-
console.error('Take Screenshot Error:', (error as Error).message);
238+
logger.error(
239+
'[RemoteComputer] TakeScreenshot Error:',
240+
(error as Error).message,
241+
);
220242
throw error;
221243
}
222244
}
@@ -366,7 +388,7 @@ export class ProxyClient {
366388
}
367389
const sandboxId = this.instance.sandboxInfo.sandBoxId;
368390
const rdpUrl = this.instance.describeSandboxTerminalUrl(sandboxId);
369-
console.log('getSandboxRDPUrl', rdpUrl);
391+
logger.log('[ProxyClient] getSandboxRDPUrl successful');
370392
return rdpUrl;
371393
}
372394

@@ -382,7 +404,7 @@ export class ProxyClient {
382404
}
383405

384406
const cdpUrlNew = await this.instance.getAvaliableWsCDPUrl(browserId);
385-
console.log('getBrowserCDPUrl refresh: ', cdpUrlNew);
407+
logger.log('[ProxyClient] getBrowserCDPUrl refresh: ', cdpUrlNew);
386408
if (cdpUrlNew != null) {
387409
this.instance.browserInfo.wsUrl = cdpUrlNew;
388410
return cdpUrlNew;
@@ -395,7 +417,10 @@ export class ProxyClient {
395417
const timeBalance = await this.instance.timeBalance('GET');
396418
return timeBalance;
397419
} catch (error) {
398-
console.error('Get Time Balance Error:', (error as Error).message);
420+
logger.error(
421+
'[ProxyClient] Get Time Balance Error:',
422+
(error as Error).message,
423+
);
399424
return -1;
400425
}
401426
}
@@ -405,7 +430,10 @@ export class ProxyClient {
405430
const timeBalance = await this.instance.timeBalance('PATCH');
406431
return timeBalance;
407432
} catch (error) {
408-
console.error('Get Time Balance Error:', (error as Error).message);
433+
logger.error(
434+
'[ProxyClient] Get Time Balance Error:',
435+
(error as Error).message,
436+
);
409437
return -1;
410438
}
411439
}
@@ -433,12 +461,12 @@ export class ProxyClient {
433461
method: 'GET',
434462
headers: { 'Content-Type': 'application/json' },
435463
});
436-
console.log('Describe Avaliable Sandbox Response:', data);
464+
logger.log('[ProxyClient] Describe Avaliable Sandbox Response:', data);
437465

438466
return data;
439467
} catch (error) {
440-
console.error(
441-
'Describe Avaliable Sandbox Error:',
468+
logger.error(
469+
'[ProxyClient] Describe Avaliable Sandbox Error:',
442470
(error as Error).message,
443471
);
444472
throw error;
@@ -454,11 +482,11 @@ export class ProxyClient {
454482
headers: { 'Content-Type': 'application/json' },
455483
},
456484
);
457-
console.log('Describe Avaliable Browser Response:', data);
485+
logger.log('[ProxyClient] Describe Avaliable Browser Response:', data);
458486
return data;
459487
} catch (error) {
460-
console.error(
461-
'Describe Avaliable Browser Error:',
488+
logger.error(
489+
'[ProxyClient] Describe Avaliable Browser Error:',
462490
(error as Error).message,
463491
);
464492
throw error;
@@ -479,10 +507,13 @@ export class ProxyClient {
479507
SandboxId: sandboxId,
480508
}),
481509
});
482-
console.log('Release Sandbox Response:', data);
510+
logger.log('[ProxyClient] Release Sandbox Response:', data);
483511
return true;
484512
} catch (error) {
485-
console.error('Release Sandbox Error:', (error as Error).message);
513+
logger.error(
514+
'[ProxyClient] Release Sandbox Error:',
515+
(error as Error).message,
516+
);
486517
throw error;
487518
}
488519
}
@@ -500,10 +531,13 @@ export class ProxyClient {
500531
BrowserId: browserId,
501532
}),
502533
});
503-
console.log('Release Browser Response:', data);
534+
logger.log('[ProxyClient] Release Browser Response:', data);
504535
return true;
505536
} catch (error) {
506-
console.error('Release Browser Error:', (error as Error).message);
537+
logger.error(
538+
'[ProxyClient] Release Browser Error:',
539+
(error as Error).message,
540+
);
507541
throw error;
508542
}
509543
}
@@ -514,10 +548,13 @@ export class ProxyClient {
514548
method: method,
515549
headers: { 'Content-Type': 'application/json' },
516550
});
517-
console.log('timeBalance() Response:', data);
551+
logger.log('[ProxyClient] timeBalance Response:', data);
518552
return data.balance;
519553
} catch (error) {
520-
console.error('timeBalance() Error:', (error as Error).message);
554+
logger.error(
555+
'[ProxyClient] timeBalance Error:',
556+
(error as Error).message,
557+
);
521558
throw error;
522559
}
523560
}
@@ -582,14 +619,14 @@ export class ProxyClient {
582619
SandboxId: sandboxId,
583620
}),
584621
});
585-
console.log('Describe Sandbox Terminal URL Response:', data);
622+
logger.log('[ProxyClient] Describe Sandbox Terminal URL Response:', data);
586623

587624
const { rdpUrl } = data;
588625

589626
return rdpUrl;
590627
} catch (error) {
591-
console.error(
592-
'Describe Sandbox Terminal URL Error:',
628+
logger.error(
629+
'[ProxyClient] Describe Sandbox Terminal URL Error:',
593630
(error as Error).message,
594631
);
595632
throw error;
@@ -602,11 +639,11 @@ export class ProxyClient {
602639
method: 'GET',
603640
headers: { 'Content-Type': 'application/json' },
604641
});
605-
console.log('Describe Browsers Response:', data);
642+
logger.log('[ProxyClient] Describe Browsers Response:', data);
606643

607644
const browsersRet: Browser[] = [];
608645
for (const [podName, browsers] of Object.entries(data)) {
609-
console.log('Pod:', podName);
646+
logger.log('[ProxyClient] Pod:', podName);
610647
(browsers as BrowserInternal[]).forEach((browser) => {
611648
if (browser.status === 'ready') {
612649
browsersRet.push({
@@ -621,7 +658,10 @@ export class ProxyClient {
621658
}
622659
return browsersRet;
623660
} catch (error) {
624-
console.error('Describe Browsers Error:', (error as Error).message);
661+
logger.error(
662+
'[ProxyClient] Describe Browsers Error:',
663+
(error as Error).message,
664+
);
625665
throw error;
626666
}
627667
}

apps/ui-tars/src/main/auth.ts

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import { AxiosRequestConfig } from 'axios';
1111
import { generateKeyPairSync } from 'crypto';
1212
import { appPrivateKeyBase64 } from './app_private';
1313
import { REGISTER_URL } from './constant';
14+
import { logger } from './logger';
1415

1516
// eslint-disable-next-line @typescript-eslint/no-explicit-any
1617
let SignJWT: any, importPKCS8: any;
@@ -41,7 +42,7 @@ async function fetchWithRetry(
4142
return response.json();
4243
} catch (error) {
4344
if (retries <= 0) throw error;
44-
console.error(`[Auth] Retrying request...`);
45+
logger.error(`[Auth] Retrying request...`);
4546
return fetchWithRetry(url, options, retries - 1);
4647
}
4748
}
@@ -101,8 +102,8 @@ let cachedDeviceId: string | null = null;
101102
async function getDeviceId(): Promise<string> {
102103
if (!cachedDeviceId) {
103104
cachedDeviceId = await machineId();
105+
logger.log('[Auth] getDeviceId:', cachedDeviceId);
104106
}
105-
console.log('[Auth] getDeviceId:', cachedDeviceId);
106107
return cachedDeviceId;
107108
}
108109

@@ -147,7 +148,7 @@ async function genKeyPair(): Promise<{
147148

148149
async function getAppPrivKeyFromEnv(): Promise<CryptoKey> {
149150
if (!appPrivateKeyBase64) {
150-
console.error('Private key is not set');
151+
logger.error('[Auth] Private key is not set');
151152
throw new Error('Private key is not set');
152153
}
153154

@@ -227,12 +228,12 @@ async function registerDevice(): Promise<boolean> {
227228
signature,
228229
}),
229230
});
230-
console.log('[Auth] Register Response:', data);
231+
logger.log('[Auth] Register Response:', data);
231232
if (data.code == 0) {
232233
return true;
233234
}
234235
} catch (error) {
235-
console.error('[Auth] Register Error:', (error as Error).message);
236+
logger.error('[Auth] Register Error:', (error as Error).message);
236237
throw error;
237238
}
238239
return false;

0 commit comments

Comments
 (0)