oystersauce
oystersauce

Reputation: 661

Node.js WebSocket Error: read ECONNRESET after some reconnects

My node.js client app connects to an third-party Websocket API for sending/receiving data continuously using the ws npm package. Sometimes the connection is closed by the server because of brief service outages (at least I believe that is the reason) and my app needs to re-establish the connection.

I got a fine solution in this post, which works for some reconnects but then my app crashes: (Node-js: Not receiving events after websocket reconnect by user Yury Fedorov):

const WS = require('ws');
var BFX = new WS('bfxs://api.uri.com/ws/2');

function createWebsocket() {
    const websocket = new BFX().ws(2, opts);
    websocket.on('open', /* code */);
    websocket.open();
}

And calling it in on('close'):

websocket.on('close', ()=>{
     setTimeout(createWebsocket, 10000);
});

The error I get is: Error: read ECONNRESET

I installed npm package longjohn for longer stack traces but I am helpless in interpreting the longer stack trace:

    ________________________________________________________
        Error: read ECONNRESET
            at _errnoException (util.js:1022:11)
            at TLSWrap.onread (net.js:615:25)`
    ____________________________________________
        at TLSSocket.Readable.on (_stream_readable.js:772:35)
        at Ultron.on (/home/user/core/node_modules/ultron/index.js:42:11)
        at WebSocket.setSocket (/home/user/core/node_modules/ws/lib/WebSocket.js:131:18)
        at ClientRequest._req.on (/home/user/core/node_modules/ws/lib/WebSocket.js:715:10)
        at emitThree (events.js:136:13)
        at ClientRequest.emit (events.js:217:7)
        at TLSSocket.socketOnData (_http_client.js:472:11)
        at emitOne (events.js:116:13)
        at TLSSocket.emit (events.js:211:7)
        at addChunk (_stream_readable.js:263:12)
        at readableAddChunk (_stream_readable.js:250:11)
        at TLSSocket.Readable.push (_stream_readable.js:208:10)
        at TLSWrap.onread (net.js:594:20)
    ____________________________________________
        at WebSocket.initAsClient (/home/user/core/node_modules/ws/lib/WebSocket.js:657:13)
        at new WebSocket (/home/user/core/node_modules/ws/lib/WebSocket.js:72:20)
        at startWebsocket (/home/user/core/myApp.js:76:11)
        at Timeout.<anonymous> (/home/user/core/myApp.js:117:31)
        at ontimeout (timers.js:475:11)
        at tryOnTimeout (timers.js:310:5)
        at Timer.listOnTimeout (timers.js:270:5)
        ____________________________________________
        at WebSocket.bfx.onclose (/home/user/core/myApp.js:117:9)
        at WebSocket.onClose (/home/user/core/node_modules/ws/lib/EventTarget.js:103:16)
        at emitTwo (events.js:126:13)
        at WebSocket.emit (events.js:214:7)
        at WebSocket.emitClose (/home/user/core/node_modules/ws/lib/WebSocket.js:211:10)
        at _receiver.cleanup (/home/user/core/node_modules/ws/lib/WebSocket.js:199:39)
        at Receiver.cleanup (/home/user/core/node_modules/ws/lib/Receiver.js:520:15)
        at WebSocket.finalize (/home/user/core/node_modules/ws/lib/WebSocket.js:199:20)
        at emitNone (events.js:111:20)
        at TLSSocket.emit (events.js:208:7)
        at endReadableNT (_stream_readable.js:1055:12)
        at _combinedTickCallback (internal/process/next_tick.js:138:11)
        at process._tickCallback (internal/process/next_tick.js:180:9)
    ____________________________________________
        at WebSocket.addEventListener (/home/user/core/node_modules/ws/lib/EventTarget.js:121:12)
        at WebSocket.set (/home/user/core/node_modules/ws/lib/WebSocket.js:434:12)
        at startWebsocket (/home/user/core/myApp.js:115:14)
        at Timeout.<anonymous> (/home/user/core/myApp.js:117:31)
        at ontimeout (timers.js:475:11)
        at tryOnTimeout (timers.js:310:5)
        at Timer.listOnTimeout (timers.js:270:5)
    ____________________________________________
        at WebSocket.bfx.onclose (/home/user/core/myApp.js:117:9)
        at WebSocket.onClose (/home/user/core/node_modules/ws/lib/EventTarget.js:103:16)
        at emitTwo (events.js:126:13)
        at WebSocket.emit (events.js:214:7)
        at WebSocket.emitClose (/home/user/core/node_modules/ws/lib/WebSocket.js:211:10)
        at _receiver.cleanup (/home/user/core/node_modules/ws/lib/WebSocket.js:199:39)
        at Receiver.cleanup (/home/user/core/node_modules/ws/lib/Receiver.js:520:15)
        at WebSocket.finalize (/home/user/core/node_modules/ws/lib/WebSocket.js:199:20)
        at emitNone (events.js:111:20)
        at TLSSocket.emit (events.js:208:7)
        at endReadableNT (_stream_readable.js:1055:12)
        at _combinedTickCallback (internal/process/next_tick.js:138:11)
        at process._tickCallback (internal/process/next_tick.js:180:9)
    ____________________________________________
        at WebSocket.addEventListener (/home/user/core/node_modules/ws/lib/EventTarget.js:121:12)
        at WebSocket.set (/home/user/core/node_modules/ws/lib/WebSocket.js:434:12)
        at startWebsocket (/home/user/core/myApp.js:115:14)
        at Object.init (/home/user/core/myApp.js:212:3)
        at main (/home/user/core/core_main.js:143:16)
        at <anonymous>
        at process._tickCallback (internal/process/next_tick.js:188:7)

 - What is causing the crash? 
 - Can I catch the error somewhere and react
   to it better? 
 - How can I debug this better?
 - Thank you!

UPDATE: 
user keja reminded me to add `websocket.on('error', (err) => console.log('error:', err));` to my listeners. The result is a similar but longer stack trace of the error message:

ON ERROR:
{ Error: read ECONNRESET
    at _errnoException (util.js:1022:11)
    at TLSWrap.onread (net.js:615:25)
____________________________________________
    at startWebsocket (/home/user/core/myApp.js:136:6)
    at Timeout.<anonymous> (/home/user/core/myApp.js:120:31)
    at ontimeout (timers.js:475:11)
    at tryOnTimeout (timers.js:310:5)
    at Timer.listOnTimeout (timers.js:270:5)
____________________________________________
    at WebSocket.bfx.onclose (/home/user/core/myApp.js:120:9)
    at WebSocket.onClose (/home/user/core/node_modules/ws/lib/EventTarget.js:103:16)
    at emitTwo (events.js:126:13)
    at WebSocket.emit (events.js:214:7)
    at WebSocket.emitClose (/home/user/core/node_modules/ws/lib/WebSocket.js:211:10)
    at _receiver.cleanup (/home/user/core/node_modules/ws/lib/WebSocket.js:199:39)
    at Receiver.cleanup (/home/user/core/node_modules/ws/lib/Receiver.js:520:15)
    at WebSocket.finalize (/home/user/core/node_modules/ws/lib/WebSocket.js:199:20)
    at emitOne (events.js:116:13)
    at TLSSocket.emit (events.js:211:7)
    at emitErrorNT (internal/streams/destroy.js:64:8)
    at _combinedTickCallback (internal/process/next_tick.js:138:11)
    at process._tickCallback (internal/process/next_tick.js:180:9)
____________________________________________
    at WebSocket.addEventListener (/home/user/core/node_modules/ws/lib/EventTarget.js:121:12)
    at WebSocket.set (/home/user/core/node_modules/ws/lib/WebSocket.js:434:12)
    at startWebsocket (/home/user/core/myApp.js:118:14)
    at Timeout.<anonymous> (/home/user/core/myApp.js:120:31)
    at ontimeout (timers.js:475:11)
    at tryOnTimeout (timers.js:310:5)
    at Timer.listOnTimeout (timers.js:270:5)
____________________________________________
    at WebSocket.bfx.onclose (/home/user/core/myApp.js:120:9)
    at WebSocket.onClose (/home/user/core/node_modules/ws/lib/EventTarget.js:103:16)
    at emitTwo (events.js:126:13)
    at WebSocket.emit (events.js:214:7)
    at WebSocket.emitClose (/home/user/core/node_modules/ws/lib/WebSocket.js:211:10)
    at _receiver.cleanup (/home/user/core/node_modules/ws/lib/WebSocket.js:199:39)
    at Receiver.cleanup (/home/user/core/node_modules/ws/lib/Receiver.js:520:15)
    at WebSocket.finalize (/home/user/core/node_modules/ws/lib/WebSocket.js:199:20)
    at emitOne (events.js:116:13)
    at TLSSocket.emit (events.js:211:7)
    at emitErrorNT (internal/streams/destroy.js:64:8)
    at _combinedTickCallback (internal/process/next_tick.js:138:11)
    at process._tickCallback (internal/process/next_tick.js:180:9)
____________________________________________
    at WebSocket.addEventListener (/home/user/core/node_modules/ws/lib/EventTarget.js:121:12)
    at WebSocket.set (/home/user/core/node_modules/ws/lib/WebSocket.js:434:12)
    at startWebsocket (/home/user/core/myApp.js:118:14)
    at Timeout.<anonymous> (/home/user/core/myApp.js:120:31)
    at ontimeout (timers.js:475:11)
    at tryOnTimeout (timers.js:310:5)
    at Timer.listOnTimeout (timers.js:270:5)
____________________________________________
    at WebSocket.bfx.onclose (/home/user/core/myApp.js:120:9)
    at WebSocket.onClose (/home/user/core/node_modules/ws/lib/EventTarget.js:103:16)
    at emitTwo (events.js:126:13)
    at WebSocket.emit (events.js:214:7)
    at WebSocket.emitClose (/home/user/core/node_modules/ws/lib/WebSocket.js:211:10)
    at _receiver.cleanup (/home/user/core/node_modules/ws/lib/WebSocket.js:199:39)
    at Receiver.cleanup (/home/user/core/node_modules/ws/lib/Receiver.js:520:15)
    at WebSocket.finalize (/home/user/core/node_modules/ws/lib/WebSocket.js:199:20)
    at emitOne (events.js:116:13)
    at TLSSocket.emit (events.js:211:7)
    at emitErrorNT (internal/streams/destroy.js:64:8)
    at _combinedTickCallback (internal/process/next_tick.js:138:11)
    at process._tickCallback (internal/process/next_tick.js:180:9)
____________________________________________
    at WebSocket.addEventListener (/home/user/core/node_modules/ws/lib/EventTarget.js:121:12)
    at WebSocket.set (/home/user/core/node_modules/ws/lib/WebSocket.js:434:12)
    at startWebsocket (/home/user/core/myApp.js:118:14)
    at Timeout.<anonymous> (/home/user/core/myApp.js:120:31)
    at ontimeout (timers.js:475:11)
    at tryOnTimeout (timers.js:310:5)
    at Timer.listOnTimeout (timers.js:270:5)
____________________________________________
    at WebSocket.bfx.onclose (/home/user/core/myApp.js:120:9)
    at WebSocket.onClose (/home/user/core/node_modules/ws/lib/EventTarget.js:103:16)
    at emitTwo (events.js:126:13)
    at WebSocket.emit (events.js:214:7)
    at WebSocket.emitClose (/home/user/core/node_modules/ws/lib/WebSocket.js:211:10)
    at _receiver.cleanup (/home/user/core/node_modules/ws/lib/WebSocket.js:199:39)
    at Receiver.cleanup (/home/user/core/node_modules/ws/lib/Receiver.js:520:15)
    at WebSocket.finalize (/home/user/core/node_modules/ws/lib/WebSocket.js:199:20)
    at emitOne (events.js:116:13)
    at TLSSocket.emit (events.js:211:7)
    at emitErrorNT (internal/streams/destroy.js:64:8)
    at _combinedTickCallback (internal/process/next_tick.js:138:11)
    at process._tickCallback (internal/process/next_tick.js:180:9)
____________________________________________
    at WebSocket.addEventListener (/home/user/core/node_modules/ws/lib/EventTarget.js:121:12)
    at WebSocket.set (/home/user/core/node_modules/ws/lib/WebSocket.js:434:12)
    at startWebsocket (/home/user/core/myApp.js:118:14)
    at Timeout.<anonymous> (/home/user/core/myApp.js:120:31)
    at ontimeout (timers.js:475:11)
    at tryOnTimeout (timers.js:310:5)
    at Timer.listOnTimeout (timers.js:270:5)
____________________________________________
    at WebSocket.bfx.onclose (/home/user/core/myApp.js:120:9)
    at WebSocket.onClose (/home/user/core/node_modules/ws/lib/EventTarget.js:103:16)
    at emitTwo (events.js:126:13)
    at WebSocket.emit (events.js:214:7)
    at WebSocket.emitClose (/home/user/core/node_modules/ws/lib/WebSocket.js:211:10)
    at _receiver.cleanup (/home/user/core/node_modules/ws/lib/WebSocket.js:199:39)
    at Receiver.cleanup (/home/user/core/node_modules/ws/lib/Receiver.js:520:15)
    at WebSocket.finalize (/home/user/core/node_modules/ws/lib/WebSocket.js:199:20)
    at emitOne (events.js:116:13)
    at TLSSocket.emit (events.js:211:7)
    at emitErrorNT (internal/streams/destroy.js:64:8)
    at _combinedTickCallback (internal/process/next_tick.js:138:11)
    at process._tickCallback (internal/process/next_tick.js:180:9)
____________________________________________
    at WebSocket.addEventListener (/home/user/core/node_modules/ws/lib/EventTarget.js:121:12)
    at WebSocket.set (/home/user/core/node_modules/ws/lib/WebSocket.js:434:12)
    at startWebsocket (/home/user/core/myApp.js:118:14)
    at Timeout.<anonymous> (/home/user/core/myApp.js:120:31)
    at ontimeout (timers.js:475:11)
    at tryOnTimeout (timers.js:310:5)
    at Timer.listOnTimeout (timers.js:270:5)
____________________________________________
    at WebSocket.bfx.onclose (/home/user/core/myApp.js:120:9)
    at WebSocket.onClose (/home/user/core/node_modules/ws/lib/EventTarget.js:103:16)
    at emitTwo (events.js:126:13)
    at WebSocket.emit (events.js:214:7)
    at WebSocket.emitClose (/home/user/core/node_modules/ws/lib/WebSocket.js:211:10)
    at _receiver.cleanup (/home/user/core/node_modules/ws/lib/WebSocket.js:199:39)
    at Receiver.cleanup (/home/user/core/node_modules/ws/lib/Receiver.js:520:15)
    at WebSocket.finalize (/home/user/core/node_modules/ws/lib/WebSocket.js:199:20)
    at emitOne (events.js:116:13)
    at TLSSocket.emit (events.js:211:7)
    at emitErrorNT (internal/streams/destroy.js:64:8)
    at _combinedTickCallback (internal/process/next_tick.js:138:11)
    at process._tickCallback (internal/process/next_tick.js:180:9)
____________________________________________
    at WebSocket.addEventListener (/home/user/core/node_modules/ws/lib/EventTarget.js:121:12)
    at WebSocket.set (/home/user/core/node_modules/ws/lib/WebSocket.js:434:12)
    at startWebsocket (/home/user/core/myApp.js:118:14)
    at Timeout.<anonymous> (/home/user/core/myApp.js:120:31)
    at ontimeout (timers.js:475:11)
    at tryOnTimeout (timers.js:310:5)
    at Timer.listOnTimeout (timers.js:270:5)
____________________________________________
    at WebSocket.bfx.onclose (/home/user/core/myApp.js:120:9)
    at WebSocket.onClose (/home/user/core/node_modules/ws/lib/EventTarget.js:103:16)
    at emitTwo (events.js:126:13)
    at WebSocket.emit (events.js:214:7)
    at WebSocket.emitClose (/home/user/core/node_modules/ws/lib/WebSocket.js:211:10)
    at _receiver.cleanup (/home/user/core/node_modules/ws/lib/WebSocket.js:199:39)
    at Receiver.cleanup (/home/user/core/node_modules/ws/lib/Receiver.js:520:15)
    at WebSocket.finalize (/home/user/core/node_modules/ws/lib/WebSocket.js:199:20)
    at emitOne (events.js:116:13)
    at TLSSocket.emit (events.js:211:7)
    at emitErrorNT (internal/streams/destroy.js:64:8)
    at _combinedTickCallback (internal/process/next_tick.js:138:11)
    at process._tickCallback (internal/process/next_tick.js:180:9)
____________________________________________
    at WebSocket.addEventListener (/home/user/core/node_modules/ws/lib/EventTarget.js:121:12)
    at WebSocket.set (/home/user/core/node_modules/ws/lib/WebSocket.js:434:12)
    at startWebsocket (/home/user/core/myApp.js:118:14)
    at Timeout.<anonymous> (/home/user/core/myApp.js:120:31)
    at ontimeout (timers.js:475:11)
    at tryOnTimeout (timers.js:310:5)
    at Timer.listOnTimeout (timers.js:270:5)
____________________________________________
    at WebSocket.bfx.onclose (/home/user/core/myApp.js:120:9)
    at WebSocket.onClose (/home/user/core/node_modules/ws/lib/EventTarget.js:103:16)
    at emitTwo (events.js:126:13)
    at WebSocket.emit (events.js:214:7)
    at WebSocket.emitClose (/home/user/core/node_modules/ws/lib/WebSocket.js:211:10)
    at _receiver.cleanup (/home/user/core/node_modules/ws/lib/WebSocket.js:199:39)
    at Receiver.cleanup (/home/user/core/node_modules/ws/lib/Receiver.js:520:15)
    at WebSocket.finalize (/home/user/core/node_modules/ws/lib/WebSocket.js:199:20)
    at emitNone (events.js:111:20)
    at TLSSocket.emit (events.js:208:7)
    at endReadableNT (_stream_readable.js:1055:12)
    at _combinedTickCallback (internal/process/next_tick.js:138:11)
    at process._tickCallback (internal/process/next_tick.js:180:9)
____________________________________________
    at WebSocket.addEventListener (/home/user/core/node_modules/ws/lib/EventTarget.js:121:12)
    at WebSocket.set (/home/user/core/node_modules/ws/lib/WebSocket.js:434:12)
    at startWebsocket (/home/user/core/myApp.js:118:14)
    at Timeout.<anonymous> (/home/user/core/myApp.js:120:31)
    at ontimeout (timers.js:475:11)
    at tryOnTimeout (timers.js:310:5)
    at Timer.listOnTimeout (timers.js:270:5)
____________________________________________
    at WebSocket.bfx.onclose (/home/user/core/myApp.js:120:9)
    at WebSocket.onClose (/home/user/core/node_modules/ws/lib/EventTarget.js:103:16)
    at emitTwo (events.js:126:13)
    at WebSocket.emit (events.js:214:7)
    at WebSocket.emitClose (/home/user/core/node_modules/ws/lib/WebSocket.js:211:10)
    at _receiver.cleanup (/home/user/core/node_modules/ws/lib/WebSocket.js:199:39)
    at Receiver.cleanup (/home/user/core/node_modules/ws/lib/Receiver.js:520:15)
    at WebSocket.finalize (/home/user/core/node_modules/ws/lib/WebSocket.js:199:20)
    at emitNone (events.js:111:20)
    at TLSSocket.emit (events.js:208:7)
    at endReadableNT (_stream_readable.js:1055:12)
    at _combinedTickCallback (internal/process/next_tick.js:138:11)
    at process._tickCallback (internal/process/next_tick.js:180:9)
____________________________________________
    at WebSocket.addEventListener (/home/user/core/node_modules/ws/lib/EventTarget.js:121:12)
    at WebSocket.set (/home/user/core/node_modules/ws/lib/WebSocket.js:434:12)
    at startWebsocket (/home/user/core/myApp.js:118:14)
    at Timeout.<anonymous> (/home/user/core/myApp.js:120:31)
    at ontimeout (timers.js:475:11)
    at tryOnTimeout (timers.js:310:5)
    at Timer.listOnTimeout (timers.js:270:5)
____________________________________________
    at WebSocket.bfx.onclose (/home/user/core/myApp.js:120:9)
    at WebSocket.onClose (/home/user/core/node_modules/ws/lib/EventTarget.js:103:16)
    at emitTwo (events.js:126:13)
    at WebSocket.emit (events.js:214:7)
    at WebSocket.emitClose (/home/user/core/node_modules/ws/lib/WebSocket.js:211:10)
    at _receiver.cleanup (/home/user/core/node_modules/ws/lib/WebSocket.js:199:39)
    at Receiver.cleanup (/home/user/core/node_modules/ws/lib/Receiver.js:520:15)
    at WebSocket.finalize (/home/user/core/node_modules/ws/lib/WebSocket.js:199:20)
    at emitOne (events.js:116:13)
    at TLSSocket.emit (events.js:211:7)
    at emitErrorNT (internal/streams/destroy.js:64:8)
    at _combinedTickCallback (internal/process/next_tick.js:138:11)
    at process._tickCallback (internal/process/next_tick.js:180:9)
____________________________________________
    at WebSocket.addEventListener (/home/user/core/node_modules/ws/lib/EventTarget.js:121:12)
    at WebSocket.set (/home/user/core/node_modules/ws/lib/WebSocket.js:434:12)
    at startWebsocket (/home/user/core/myApp.js:118:14)
    at Timeout.<anonymous> (/home/user/core/myApp.js:120:31)
    at ontimeout (timers.js:475:11)
    at tryOnTimeout (timers.js:310:5)
    at Timer.listOnTimeout (timers.js:270:5)
____________________________________________
    at WebSocket.bfx.onclose (/home/user/core/myApp.js:120:9)
    at WebSocket.onClose (/home/user/core/node_modules/ws/lib/EventTarget.js:103:16)
    at emitTwo (events.js:126:13)
    at WebSocket.emit (events.js:214:7)
    at WebSocket.emitClose (/home/user/core/node_modules/ws/lib/WebSocket.js:211:10)
    at _receiver.cleanup (/home/user/core/node_modules/ws/lib/WebSocket.js:199:39)
    at Receiver.cleanup (/home/user/core/node_modules/ws/lib/Receiver.js:520:15)
    at WebSocket.finalize (/home/user/core/node_modules/ws/lib/WebSocket.js:199:20)
    at emitOne (events.js:116:13)
    at TLSSocket.emit (events.js:211:7)
    at emitErrorNT (internal/streams/destroy.js:64:8)
    at _combinedTickCallback (internal/process/next_tick.js:138:11)
    at process._tickCallback (internal/process/next_tick.js:180:9)
____________________________________________
    at WebSocket.addEventListener (/home/user/core/node_modules/ws/lib/EventTarget.js:121:12)
    at WebSocket.set (/home/user/core/node_modules/ws/lib/WebSocket.js:434:12)
    at startWebsocket (/home/user/core/myApp.js:118:14)
    at Timeout.<anonymous> (/home/user/core/myApp.js:120:31)
    at ontimeout (timers.js:475:11)
    at tryOnTimeout (timers.js:310:5)
    at Timer.listOnTimeout (timers.js:270:5)
____________________________________________
    at WebSocket.bfx.onclose (/home/user/core/myApp.js:120:9)
    at WebSocket.onClose (/home/user/core/node_modules/ws/lib/EventTarget.js:103:16)
    at emitTwo (events.js:126:13)
    at WebSocket.emit (events.js:214:7)
    at WebSocket.emitClose (/home/user/core/node_modules/ws/lib/WebSocket.js:211:10)
    at _receiver.cleanup (/home/user/core/node_modules/ws/lib/WebSocket.js:199:39)
    at Receiver.cleanup (/home/user/core/node_modules/ws/lib/Receiver.js:520:15)
    at WebSocket.finalize (/home/user/core/node_modules/ws/lib/WebSocket.js:199:20)
    at emitOne (events.js:116:13)
    at TLSSocket.emit (events.js:211:7)
    at emitErrorNT (internal/streams/destroy.js:64:8)
    at _combinedTickCallback (internal/process/next_tick.js:138:11)
    at process._tickCallback (internal/process/next_tick.js:180:9)
____________________________________________
    at WebSocket.addEventListener (/home/user/core/node_modules/ws/lib/EventTarget.js:121:12)
    at WebSocket.set (/home/user/core/node_modules/ws/lib/WebSocket.js:434:12)
    at startWebsocket (/home/user/core/myApp.js:118:14)
    at Timeout.<anonymous> (/home/user/core/myApp.js:120:31)
    at ontimeout (timers.js:475:11)
    at tryOnTimeout (timers.js:310:5)
    at Timer.listOnTimeout (timers.js:270:5)
____________________________________________
    at WebSocket.bfx.onclose (/home/user/core/myApp.js:120:9)
    at WebSocket.onClose (/home/user/core/node_modules/ws/lib/EventTarget.js:103:16)
    at emitTwo (events.js:126:13)
    at WebSocket.emit (events.js:214:7)
    at WebSocket.emitClose (/home/user/core/node_modules/ws/lib/WebSocket.js:211:10)
    at _receiver.cleanup (/home/user/core/node_modules/ws/lib/WebSocket.js:199:39)
    at Receiver.cleanup (/home/user/core/node_modules/ws/lib/Receiver.js:520:15)
    at WebSocket.finalize (/home/user/core/node_modules/ws/lib/WebSocket.js:199:20)
    at emitNone (events.js:111:20)
    at TLSSocket.emit (events.js:208:7)
    at endReadableNT (_stream_readable.js:1055:12)
    at _combinedTickCallback (internal/process/next_tick.js:138:11)
    at process._tickCallback (internal/process/next_tick.js:180:9)
____________________________________________
    at WebSocket.addEventListener (/home/user/core/node_modules/ws/lib/EventTarget.js:121:12)
    at WebSocket.set (/home/user/core/node_modules/ws/lib/WebSocket.js:434:12)
    at startWebsocket (/home/user/core/myApp.js:118:14)
    at Timeout.<anonymous> (/home/user/core/myApp.js:120:31)
    at ontimeout (timers.js:475:11)
    at tryOnTimeout (timers.js:310:5)
    at Timer.listOnTimeout (timers.js:270:5)
____________________________________________
    at WebSocket.bfx.onclose (/home/user/core/myApp.js:120:9)
    at WebSocket.onClose (/home/user/core/node_modules/ws/lib/EventTarget.js:103:16)
    at emitTwo (events.js:126:13)
    at WebSocket.emit (events.js:214:7)
    at WebSocket.emitClose (/home/user/core/node_modules/ws/lib/WebSocket.js:211:10)
    at _receiver.cleanup (/home/user/core/node_modules/ws/lib/WebSocket.js:199:39)
    at Receiver.cleanup (/home/user/core/node_modules/ws/lib/Receiver.js:520:15)
    at WebSocket.finalize (/home/user/core/node_modules/ws/lib/WebSocket.js:199:20)
    at emitOne (events.js:116:13)
    at TLSSocket.emit (events.js:211:7)
    at emitErrorNT (internal/streams/destroy.js:64:8)
    at _combinedTickCallback (internal/process/next_tick.js:138:11)
    at process._tickCallback (internal/process/next_tick.js:180:9)
____________________________________________
    at WebSocket.addEventListener (/home/user/core/node_modules/ws/lib/EventTarget.js:121:12)
    at WebSocket.set (/home/user/core/node_modules/ws/lib/WebSocket.js:434:12)
    at startWebsocket (/home/user/core/myApp.js:118:14)
    at Object.init (/home/user/core/myApp.js:224:3)
    at main (/home/user/core/core_main.js:143:16)
    at <anonymous>
    at process._tickCallback (internal/process/next_tick.js:188:7) code: 'ECONNRESET', errno: 'ECONNRESET', syscall: 'read' }

Upvotes: 3

Views: 5167

Answers (1)

keja
keja

Reputation: 1363

According to the documentation there is an error event you can listen on

So you could try something like

websocket.on('error', (err) => console.log('error:', err));

maybe that can point you in the direction to what is wrong.

Upvotes: 2

Related Questions