Better error message when nexuswriter is not reachable
It would be good to provide a better error message when the writer is not reachable.
Here is what i get from 1.10.
This can be patched at bliss/scanning/writer/nexus.py", line 80
, or better in the proxy.
Traceback (most recent call last):
File "/nobackup/lvalls1/valls/workspace/daiquiri-tomo.git/bliss.git/bliss/common/tango.py", line 202, in __getattr__
self.__wrapped__.ping()
File "/nobackup/lvalls1/valls/Software/miniconda3/envs/tomodemo-daiquiri-env/lib/python3.7/site-packages/tango/green.py", line 195, in greener
return executor.run(fn, args, kwargs, wait=wait, timeout=timeout)
File "/nobackup/lvalls1/valls/Software/miniconda3/envs/tomodemo-daiquiri-env/lib/python3.7/site-packages/tango/green.py", line 114, in run
return self.access(accessor, timeout=timeout)
File "/nobackup/lvalls1/valls/Software/miniconda3/envs/tomodemo-daiquiri-env/lib/python3.7/site-packages/tango/gevent_executor.py", line 155, in access
return accessor.get(timeout=timeout)
File "src/gevent/event.py", line 329, in gevent._gevent_cevent.AsyncResult.get
File "src/gevent/event.py", line 359, in gevent._gevent_cevent.AsyncResult.get
File "src/gevent/event.py", line 347, in gevent._gevent_cevent.AsyncResult.get
File "src/gevent/event.py", line 327, in gevent._gevent_cevent.AsyncResult._raise_exception
File "/nobackup/lvalls1/valls/Software/miniconda3/envs/tomodemo-daiquiri-env/lib/python3.7/site-packages/gevent/_compat.py", line 65, in reraise
raise value.with_traceback(tb)
File "/nobackup/lvalls1/valls/Software/miniconda3/envs/tomodemo-daiquiri-env/lib/python3.7/site-packages/tango/gevent_executor.py", line 68, in wrapper
return func(*args, **kwargs)
File "/nobackup/lvalls1/valls/Software/miniconda3/envs/tomodemo-daiquiri-env/lib/python3.7/site-packages/tango/device_proxy.py", line 1502, in __DeviceProxy__ping
return self._ping(*args, **kwargs)
PyTango.DevFailed: DevFailed[
DevError[
desc = Failed to connect to device id00/bliss_nxwriter/demo_session
The connection request was delayed.
The last connection request was done less than 1000 ms ago
origin = Connection::reconnect
reason = API_CantConnectToDevice
severity = ERR]
]
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/nobackup/lvalls1/valls/workspace/daiquiri-tomo.git/daiquiri.git/daiquiri/core/components/__init__.py", line 867, in execute
self.started(self.uid)
File "/nobackup/lvalls1/valls/workspace/daiquiri-tomo.git/daiquiri.git/daiquiri/core/components/__init__.py", line 513, in _actor_started
start(actid, actor)
File "/nobackup/lvalls1/valls/workspace/daiquiri-tomo.git/daiquiri.git/daiquiri/core/components/samplescan.py", line 122, in actor_started
self.initialize_saving(actor)
File "/nobackup/lvalls1/valls/workspace/daiquiri-tomo.git/daiquiri.git/daiquiri/core/components/dcutilsmixin.py", line 41, in initialize_saving
self._saving.create_root_path(wait_exists=True)
File "/nobackup/lvalls1/valls/workspace/daiquiri-tomo.git/daiquiri.git/daiquiri/core/saving/bliss_basic.py", line 41, in create_root_path
self.scan_saving.create_root_path()
File "/nobackup/lvalls1/valls/workspace/daiquiri-tomo.git/bliss.git/bliss/scanning/scan_saving.py", line 670, in create_root_path
self.create_path(self.root_path)
File "/nobackup/lvalls1/valls/workspace/daiquiri-tomo.git/bliss.git/bliss/scanning/scan_saving.py", line 666, in create_path
self.writer_object.create_path(os.path.abspath(path))
File "/nobackup/lvalls1/valls/workspace/daiquiri-tomo.git/bliss.git/bliss/scanning/writer/nexus.py", line 80, in create_path
self.proxy.makedirs(full_path)
File "/nobackup/lvalls1/valls/workspace/daiquiri-tomo.git/bliss.git/bliss/common/tango.py", line 204, in __getattr__
raise e from cause
File "/nobackup/lvalls1/valls/workspace/daiquiri-tomo.git/bliss.git/bliss/common/tango.py", line 194, in __getattr__
attr = getattr(self.__wrapped__, name)
File "/nobackup/lvalls1/valls/Software/miniconda3/envs/tomodemo-daiquiri-env/lib/python3.7/site-packages/tango/device_proxy.py", line 320, in __DeviceProxy__getattr
raise AttributeError(name)
AttributeError: makedirs
Edited by Valentin Valls