Better internet outage detection based on last message from connections
This commit is contained in:
parent
fcd4253a8d
commit
f3c8d5e541
2 changed files with 28 additions and 10 deletions
|
@ -36,18 +36,15 @@ class FileServer(ConnectionServer):
|
|||
)
|
||||
else:
|
||||
self.log.debug("FileRequest: %s %s" % (str(connection), message["cmd"]))
|
||||
|
||||
# Internet connection outage detection
|
||||
if len(self.connections) > 5:
|
||||
if time.time() - self.last_request > 60*5:
|
||||
self.log.info("Internet outage detected, no requests received for %.0fs" % (time.time() - self.last_request))
|
||||
self.last_request = time.time()
|
||||
gevent.spawn(self.checkSites, check_files=False, force_port_check=True)
|
||||
else:
|
||||
self.last_request = time.time()
|
||||
|
||||
req = FileRequest(self, connection)
|
||||
req.route(message["cmd"], message.get("req_id"), message.get("params"))
|
||||
if not self.has_internet:
|
||||
self.has_internet = True
|
||||
self.onInternetOnline()
|
||||
|
||||
def onInternetOnline(self):
|
||||
self.log.info("Internet online")
|
||||
gevent.spawn(self.checkSites, check_files=False, force_port_check=True)
|
||||
|
||||
# Reload the FileRequest class to prevent restarts in debug mode
|
||||
def reload(self):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue