diff --git a/daq/src/aaredaq/config.py b/daq/src/aaredaq/config.py index e20782a0..281f8b00 100644 --- a/daq/src/aaredaq/config.py +++ b/daq/src/aaredaq/config.py @@ -19,11 +19,14 @@ from aaredaqlib.models import ( ) from aaredaqlib.beamline import MXBeamline +from aaredaqlib.logger_config import setup_logger ABR_POS_ALIGN_DEF = Coordinate(x=-18, y=-0.266, z=0) ABR_POS_MOUNT = Coordinate(x=-18, y=0, z=0) ABR_OMEGA_MOUNT = 0.0 +logger = setup_logger("aareDAQ") + # Serialize the NumPy array to a Base64 string def numpy_to_base64(array: np.ndarray) -> str: buffer = io.BytesIO() # Create an in-memory buffer @@ -576,9 +579,14 @@ class BeamlineConfig: def auto_params(self) -> SimpleScanParameters | None: tmp = self.__client.get(f"{self.__bl}:auto_params") if tmp is None: + logger.debug(f"auto_params missing in redis key {self.__bl}:auto_params") + return None + try: + data_dict = json.loads(tmp) + return SimpleScanParameters(**data_dict) + except Exception as e: + logger.error(f"failed to parse auto_params from redis: {e}; raw={tmp}") return None - data_dict = json.loads(tmp) - return SimpleScanParameters(**data_dict) @auto_params.setter def auto_params(self, params:SimpleScanParameters | None):