fluent-logger-node
fluent-logger-node copied to clipboard
Fix socket issues
net.Socket.write won't necessarily immediately invoke the callback, and it's possible that we manage to submit the write, but the error event has triggered, setting the socket to null, and still end up calling the callback.
This is very rare of course, but can happen in extreme cases, and also requires the combination of reconnection attempts and acknowledgements.
Looking through the code, I also noted this can happen during the TLS handshake, so I fixed that as well.