Track WS server error
Summary: This is currently done by querying the 'console-log' event. Instead, make it type safe and official. Reviewed By: antonk52 Differential Revision: D50927803 fbshipit-source-id: e0488782dd584e36b6f742f9892fc09ffaf62469
This commit is contained in:
committed by
Facebook GitHub Bot
parent
8f1b4ffa1c
commit
d5a0c206f2
@@ -29,6 +29,7 @@ import {Server} from 'net';
|
||||
import {serializeError} from 'serialize-error';
|
||||
import {WSCloseCode} from '../utils/WSCloseCode';
|
||||
import {recorder} from '../recorder';
|
||||
import {tracker} from '../tracker';
|
||||
|
||||
export interface ConnectionCtx {
|
||||
clientQuery?: ClientQuery;
|
||||
@@ -63,11 +64,11 @@ class ServerWebSocket extends ServerWebSocketBase {
|
||||
// We do not need to listen to http server's `error` because it is propagated to WS
|
||||
// https://github.com/websockets/ws/blob/a3a22e4ed39c1a3be8e727e9c630dd440edc61dd/lib/websocket-server.js#L109
|
||||
const onConnectionError = (error: Error) => {
|
||||
const message = JSON.stringify(serializeError(error));
|
||||
tracker.track('server-ws-server-error', {port, error: message});
|
||||
reject(
|
||||
new Error(
|
||||
`Unable to start server at port ${port} due to ${JSON.stringify(
|
||||
serializeError(error),
|
||||
)}`,
|
||||
`Unable to start server at port ${port} due to ${message}`,
|
||||
),
|
||||
);
|
||||
};
|
||||
|
||||
@@ -48,6 +48,7 @@ type TrackerEvents = {
|
||||
};
|
||||
'server-socket-already-in-use': {};
|
||||
'server-open-ui': {browser: boolean; hasToken: boolean};
|
||||
'server-ws-server-error': {port: number; error: string};
|
||||
'browser-connection-created': {
|
||||
successful: boolean;
|
||||
timeMS: number;
|
||||
|
||||
Reference in New Issue
Block a user