From 10c68f935dd2ef6ab09ef435b86fa3c6eb4ba1aa Mon Sep 17 00:00:00 2001 From: "Tommy D. Rossi" Date: Sat, 15 Nov 2025 18:56:03 +0100 Subject: [PATCH] Create start-relay-server.ts --- playwriter/src/start-relay-server.ts | 43 ++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 playwriter/src/start-relay-server.ts diff --git a/playwriter/src/start-relay-server.ts b/playwriter/src/start-relay-server.ts new file mode 100644 index 0000000..927bb71 --- /dev/null +++ b/playwriter/src/start-relay-server.ts @@ -0,0 +1,43 @@ +import { startRelayServer } from './extension/cdp-relay.js' +import fs from 'node:fs' +import path from 'node:path' +import { fileURLToPath } from 'node:url' + +const __dirname = path.dirname(fileURLToPath(import.meta.url)) +const logFilePath = path.join(__dirname, '..', 'relay-server.log') + +fs.writeFileSync(logFilePath, '') + +const log = (...args: any[]) => { + const message = args.map(arg => + typeof arg === 'string' ? arg : JSON.stringify(arg) + ).join(' ') + fs.appendFileSync(logFilePath, message + '\n') +} + +const logger = { + log, + error: log +} + +export async function startServer({ port = 9988 }: { port?: number } = {}) { + const server = await startRelayServer({ port, logger }) + + console.log('CDP Relay Server running. Press Ctrl+C to stop.') + console.log('Logs are being written to:', logFilePath) + + process.on('SIGINT', () => { + console.log('\nShutting down...') + server.close() + process.exit(0) + }) + + process.on('SIGTERM', () => { + console.log('\nShutting down...') + server.close() + process.exit(0) + }) + + return server +} +startServer().catch(console.error)