diff --git a/warden_server/warden_server.py b/warden_server/warden_server.py
index 52ec05a67c2fc452ace47440efbee2554ffb5b8c..e64431781dbefe9ae7e024dfb51943aaf976b7f2 100755
--- a/warden_server/warden_server.py
+++ b/warden_server/warden_server.py
@@ -75,6 +75,9 @@ class Error(Exception):
             next_msg = e.get("message", "Unknown error").replace("\n", " ")
             if msg != next_msg:
                 msg = "Multiple errors"
+
+        msg = "".join((c if '\x20' <= c != '\x7f' else r'\x{:02x}'.format(ord(c))) for c in msg) # escape control characters
+
         return err, msg
 
     def __str__(self):