imagine killing websocket server because of one client error, lmao

This commit is contained in:
HF 2020-04-17 19:36:27 +02:00
parent dd61ff064d
commit 865419f8ed
2 changed files with 12 additions and 2 deletions

View File

@ -17,6 +17,9 @@ const logger = createLogger({
new transports.Console(),
],
});
logger.error.bind(logger);
logger.info.bind(logger);
logger.warn.bind(logger);
export const proxyLogger = createLogger({
transports: [

View File

@ -67,7 +67,9 @@ class SocketServer extends WebSocketEvents {
});
this.wss = wss;
wss.on('error', logger.error);
wss.on('error', (e) => {
logger.error(`WebSocket Server Error ${e.message}`);
});
wss.on('connection', async (ws, req) => {
ws.isAlive = true;
@ -84,7 +86,11 @@ class SocketServer extends WebSocketEvents {
ws.send(`"${ws.name}"`);
}
ws.on('error', logger.error);
ws.on('error', (e) => {
logger.error(`WebSocket Client Connection Error ${e.message}`);
ipCounter.delete(ip);
this.deleteAllChunks(ws);
});
ws.on('close', () => {
// is close called on terminate?
// possible memory leak?
@ -92,6 +98,7 @@ class SocketServer extends WebSocketEvents {
this.deleteAllChunks(ws);
});
ws.on('message', (message) => {
logger.error(`WebSocket Client Connection Error ${message}`);
if (typeof message === 'string') {
this.onTextMessage(message, ws);
} else {