Compare commits

...

2 commits

Author SHA1 Message Date
32d9b4d658
sleeptime const 2023-05-22 15:08:38 +02:00
ea511a6d67
maybe ready for prod 2023-05-22 15:07:43 +02:00
2 changed files with 14 additions and 5 deletions

View file

@ -0,0 +1 @@
python-daemon==3.0.1

View file

@ -1,18 +1,21 @@
import http.client
import daemon
from time import sleep
import datetime
from socket import socket
TIMEOUT: float = 1
TESTDOMAINS: list[str] = ["cscherr.de", "debian.org", "cloudflare.com"]
SLEEPTIME: int = 600 # 10 minutes
def check_net() -> bool:
overall: bool = True
statuses: list[bool] = []
for domain in TESTDOMAINS:
status, msg = reachable(domain)
overall &= status
statuses.append(status)
print(f"{domain:60s} {msg}")
overall = False
for s in statuses:
overall |= s
return overall
def reachable(domain: str) -> tuple[bool, str]:
@ -31,9 +34,14 @@ def monitor():
b = check_net()
if b: print(":SUCCESS:")
else: print(":FAILURE:")
sleep(4)
sleep(SLEEPTIME)
except Exception as e:
print(e)
if __name__ == "__main__":
print("executing as normal script")
monitor()
with daemon.DaemonContext():
print("entering daemon mode")
monitor()