From fb16e7c6f959d55784b64e669a77d5a5aa9c1aee Mon Sep 17 00:00:00 2001 From: ndrsnhs Date: Tue, 17 Dec 2024 10:30:31 +0100 Subject: [PATCH 1/2] improve logging --- packages/helpermodules/measurement_logging/write_log.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/helpermodules/measurement_logging/write_log.py b/packages/helpermodules/measurement_logging/write_log.py index 40aeaa5f69..0886a099cc 100644 --- a/packages/helpermodules/measurement_logging/write_log.py +++ b/packages/helpermodules/measurement_logging/write_log.py @@ -1,6 +1,7 @@ from enum import Enum import json import logging +from math import isnan from pathlib import Path import re import string @@ -143,6 +144,8 @@ def save_log(log_type: LogType): content = json.load(jsonFile) except FileNotFoundError: content = {"entries": [], "names": {}} + except json.JSONDecodeError: + content = {"entries": [], "names": {}} previous_entry = get_previous_entry(parent_file, content) @@ -263,7 +266,9 @@ def find_and_fix_value(value_name): if value.get(value_name) is not None: if value[value_name] == 0: try: - value[value_name] = previous_entry[group][component][value_name] + if (previous_entry[group][component][value_name] is not None and + isnan(previous_entry[group][component][value_name]) is False): + value[value_name] = previous_entry[group][component][value_name] except KeyError: log.exception("Es konnte kein vorheriger Wert gefunden werden.") if previous_entry is not None: From 0b15f8f55204c2b64b236a9b1301dc29e5a77b5f Mon Sep 17 00:00:00 2001 From: ndrsnhs Date: Tue, 17 Dec 2024 11:22:46 +0100 Subject: [PATCH 2/2] improve logging --- packages/helpermodules/measurement_logging/write_log.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/helpermodules/measurement_logging/write_log.py b/packages/helpermodules/measurement_logging/write_log.py index 0886a099cc..92707c9215 100644 --- a/packages/helpermodules/measurement_logging/write_log.py +++ b/packages/helpermodules/measurement_logging/write_log.py @@ -1,4 +1,5 @@ from enum import Enum +import os import json import logging from math import isnan @@ -145,6 +146,8 @@ def save_log(log_type: LogType): except FileNotFoundError: content = {"entries": [], "names": {}} except json.JSONDecodeError: + new_filepath = str(parent_file / f"{file_name}_invalid.json") + os.rename(filepath, new_filepath) content = {"entries": [], "names": {}} previous_entry = get_previous_entry(parent_file, content)