def iroute_ping_thread(self, client_id, virt_address): thread_id = uuid.uuid4().hex self.iroutes_thread[client_id] = thread_id yield interrupter_sleep(6) while True: yield interrupter_sleep(1) if client_id not in self.iroutes_index or \ self.iroutes_thread.get(client_id) != thread_id: break if not self.has_failover_iroute(client_id): continue latency = utils.ping(virt_address) print 'ping', client_id, latency if latency is None and self.has_failover_iroute(client_id): self.instance_com.client_kill(client_id) break
def iroute_ping_thread(self, client_id, virt_address): thread_id = uuid.uuid4().hex self.iroutes_thread[client_id] = thread_id yield interrupter_sleep(6) while True: yield interrupter_sleep(self.server.link_ping_interval) if client_id not in self.iroutes_index or \ self.iroutes_thread.get(client_id) != thread_id: break if not self.has_failover_iroute(client_id): continue latency = utils.ping(virt_address, timeout=self.server.link_ping_timeout) if latency is None and self.has_failover_iroute(client_id): self.instance_com.push_output('Gateway link timeout on %s' % virt_address) self.instance_com.client_kill(client_id) break
def iroute_ping_thread(self, client_id, virt_address): thread_id = uuid.uuid4().hex self.iroutes_thread[client_id] = thread_id yield interrupter_sleep(6) while True: yield interrupter_sleep(self.server.link_ping_interval) if client_id not in self.iroutes_index or \ self.iroutes_thread.get(client_id) != thread_id: break if not self.has_failover_iroute(client_id): continue latency = utils.ping(virt_address, timeout=self.server.link_ping_timeout) if latency is None and self.has_failover_iroute(client_id): self.instance_com.push_output( 'Gateway link timeout on %s' % virt_address) self.instance_com.client_kill(client_id) break