in src/sinks/connections/TcpClient.ts [49:72]
public async sendMessage(message: Buffer): Promise<void> {
// ensure the socket is open and writable
await this.waitForOpenConnection();
await new Promise((resolve, reject) => {
const onSendError = (err: Error): void => {
LOG('Failed to write', err);
reject(err);
};
const wasFlushedToKernel = this.socket.write(message, (err?: Error) => {
if (!err) {
LOG('Write succeeded');
resolve();
} else {
onSendError(err);
}
});
if (!wasFlushedToKernel) {
LOG('TcpClient data was not flushed to kernel buffer and was queued in memory.');
}
});
}