From e1df24633ae1d64983799d501385b87df1093e0c Mon Sep 17 00:00:00 2001 From: Markus Ransberger Date: Sun, 21 Jul 2024 19:24:20 +0200 Subject: [PATCH] Add diagnosis script and refactor UDP receiver. --- scripts/http_diagnosis.py | 13 +++++++++++++ scripts/multicastUDP_receiver.py | 32 +++++-------------------------- scripts/requirements.txt | Bin 0 -> 184 bytes 3 files changed, 18 insertions(+), 27 deletions(-) create mode 100644 scripts/http_diagnosis.py create mode 100644 scripts/requirements.txt diff --git a/scripts/http_diagnosis.py b/scripts/http_diagnosis.py new file mode 100644 index 0000000..95fdb22 --- /dev/null +++ b/scripts/http_diagnosis.py @@ -0,0 +1,13 @@ +import requests + +r = requests.get("http://wordclock.local/cmd?diag=reset_info") +print(r.status_code) +print(r.text) + +r = requests.get("http://wordclock.local/cmd?diag=sketch_info") +print(r.status_code) +print(r.text) + +r = requests.get("http://wordclock.local/cmd?diag=device_info") +print(r.status_code) +print(r.text) \ No newline at end of file diff --git a/scripts/multicastUDP_receiver.py b/scripts/multicastUDP_receiver.py index 63e4f2c..2c611f9 100644 --- a/scripts/multicastUDP_receiver.py +++ b/scripts/multicastUDP_receiver.py @@ -4,15 +4,17 @@ import queue import socket import struct import sys +from pathlib import Path +LOG_PATH = Path("C:/temp/wordclock_log.txt") def setup_logging(): FORMAT = "%(asctime)s %(message)s" logging.basicConfig(format=FORMAT, level=logging.INFO) logger = logging.getLogger() - #handler = logging.StreamHandler(sys.stdout) - #handler.setLevel(logging.INFO) - #logger.addHandler(handler) + handler = logging.FileHandler(LOG_PATH) + handler.setLevel(logging.INFO) + logger.addHandler(handler) return logger @@ -42,33 +44,9 @@ mreq = struct.pack("4s4s", group, socket.inet_aton(get_ip_address())) sock.setsockopt(socket.IPPROTO_IP, socket.IP_ADD_MEMBERSHIP, mreq) logger.info("Ready") -saveCounter = 0 - -buffer = queue.Queue(20) # Receive/respond loop while True: data, address = sock.recvfrom(1024) data_str = data.decode("utf-8").strip() logger.info(data_str) - data_str = datetime.now().strftime("%b-%d-%Y_%H%M%S") + ": " + data_str - buffer.put(data_str) - if buffer.full(): - buffer.get() - - if "NTP-Update not successful" in data_str or "Start program" in data_str: - f = open("log.txt", "a") - while not buffer.empty(): - f.write(buffer.get()) - f.write("\n") - f.close() - saveCounter = 20 - - if saveCounter > 0: - f = open("log.txt", "a") - f.write(data_str) - f.write("\n") - if saveCounter == 1: - f.write("\n") - f.close() - saveCounter -= 1 diff --git a/scripts/requirements.txt b/scripts/requirements.txt new file mode 100644 index 0000000000000000000000000000000000000000..361bb3382c80d5b22da282e11940b81a708aad69 GIT binary patch literal 184 zcmXwzOA3QP5JcZv@FzO?7K%s$q(%*K-~X9V;6Hz4X!qo>DWlT8m8c_fmX@NspgjMu1YWL+EJ`{-?U!vw%yxB OADvyxzkX%ZKluk<9~>J1 literal 0 HcmV?d00001