diff --git a/artiq/protocols/pc_rpc.py b/artiq/protocols/pc_rpc.py index d4484dfc2..bc19f7c5e 100644 --- a/artiq/protocols/pc_rpc.py +++ b/artiq/protocols/pc_rpc.py @@ -510,9 +510,13 @@ class Server(_AsyncioServer): .format(obj["action"])) except asyncio.CancelledError: raise - except: + except Exception as exc: + short_exc_info = type(exc).__name__ + exc_str = str(exc) + if exc_str: + short_exc_info += ": " + exc_str.splitlines()[0] return {"status": "failed", - "message": traceback.format_exc()} + "message": short_exc_info + "\n" + traceback.format_exc()} finally: if self._noparallel is not None: self._noparallel.release()