Skip to content

Commit e88968f

Browse files
author
Luca Forstner
authored
test(e2e): Make proxy server more error resistant (#11763)
1 parent b61d820 commit e88968f

File tree

1 file changed

+20
-3
lines changed

1 file changed

+20
-3
lines changed

dev-packages/event-proxy-server/src/event-proxy-server.ts

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,11 @@ export async function startEventProxyServer(options: EventProxyServerOptions): P
4141
});
4242

4343
proxyRequest.addListener('error', err => {
44-
throw err;
44+
// eslint-disable-next-line no-console
45+
console.log('[event-proxy-server] Warn: Receiving proxy request errored!', err);
46+
proxyResponse.writeHead(500);
47+
proxyResponse.write('{}', 'utf-8');
48+
proxyResponse.end();
4549
});
4650

4751
proxyRequest.addListener('end', () => {
@@ -53,7 +57,16 @@ export async function startEventProxyServer(options: EventProxyServerOptions): P
5357
const envelopeHeader: EnvelopeItem[0] = JSON.parse(proxyRequestBody.split('\n')[0]);
5458

5559
if (!envelopeHeader.dsn) {
56-
throw new Error('[event-proxy-server] No dsn on envelope header. Please set tunnel option.');
60+
// eslint-disable-next-line no-console
61+
console.log(
62+
'[event-proxy-server] Warn: No dsn on envelope header. Maybe a client-report was received. Proxy request body:',
63+
proxyRequestBody,
64+
);
65+
66+
proxyResponse.writeHead(200);
67+
proxyResponse.write('{}', 'utf-8');
68+
proxyResponse.end();
69+
return;
5770
}
5871

5972
const { origin, pathname, host } = new URL(envelopeHeader.dsn as string);
@@ -91,7 +104,11 @@ export async function startEventProxyServer(options: EventProxyServerOptions): P
91104
});
92105

93106
sentryResponse.addListener('error', err => {
94-
throw err;
107+
// eslint-disable-next-line no-console
108+
console.log('[event-proxy-server] Warn: Proxying to Sentry returned an error!', err);
109+
proxyResponse.writeHead(500);
110+
proxyResponse.write('{}', 'utf-8');
111+
proxyResponse.end();
95112
});
96113

97114
proxyResponse.writeHead(sentryResponse.statusCode || 500, sentryResponse.headers);

0 commit comments

Comments
 (0)