some improvements

This commit is contained in:
Bastian Schroll 2018-09-23 18:44:58 +02:00
parent 1837ba46af
commit 71065672a7
3 changed files with 15 additions and 1 deletions

View file

@ -30,6 +30,8 @@ class NetCheck:
@param timout: timout for connection check in sec. (1)"""
self._hostname = hostname
self._timeout = timeout
self._connectionState = False
self.checkConn() # initiate a first check
def checkConn(self):
"""!Check the connection
@ -38,7 +40,14 @@ class NetCheck:
try:
urlopen(self._hostname, timeout=self._timeout)
logging.debug("%s is reachable", self._hostname)
self._connectionState = True
return True
except:
logging.warning("%s is not reachable", self._hostname)
self._connectionState = False
return False
@property
def connectionState(self):
"""!Property for the last connection state from checkConn()"""
return self._connectionState

View file

@ -87,6 +87,8 @@ class RepeatedTimer:
else:
logging.warning("timer overdue! interval: %0.3f sec. - runtime: %0.3f sec.", self._interval, runTime)
self._overdueCount += 1
logging.debug("repeatedTimer thread stopped: %s", self._thread.name)
@property
def restTime(self):
"""!Property to get remaining time till next call"""

View file

@ -61,8 +61,11 @@ except Exception as e: # pragma: no cover
from boswatch.utils.timer import RepeatedTimer
from boswatch.network.netCheck import NetCheck
net = NetCheck()
test = RepeatedTimer(10, net.checkConn)
test = RepeatedTimer(3, net.checkConn)
test.start()
time.sleep(10)
print(net.connectionState)
test.stop()
try:
header.logoToLog()