mirror of
https://github.com/openstf/stf
synced 2025-10-03 17:59:28 +02:00
26 lines
679 B
JavaScript
26 lines
679 B
JavaScript
// ISSUE-100 (https://github.com/openstf/stf/issues/100)
|
|
|
|
// In some networks TCP Connection dies if kept idle for long.
|
|
// Setting TCP_KEEPALIVE option true, to all the zmq sockets
|
|
// won't let it die
|
|
|
|
var zmq = require('zmq')
|
|
|
|
var log = require('./logger').createLogger('util:zmqutil')
|
|
|
|
module.exports.socket = function() {
|
|
var sock = zmq.socket.apply(zmq, arguments)
|
|
|
|
;['ZMQ_TCP_KEEPALIVE', 'ZMQ_TCP_KEEPALIVE_IDLE'].forEach(function(opt) {
|
|
if (process.env[opt]) {
|
|
try {
|
|
sock.setsockopt(zmq[opt], Number(process.env[opt]))
|
|
}
|
|
catch (err) {
|
|
log.warn('ZeroMQ library too old, no support for %s', opt)
|
|
}
|
|
}
|
|
})
|
|
|
|
return sock
|
|
}
|