diff --git a/src/webterm/docker_exec_session.py b/src/webterm/docker_exec_session.py index 99f29e7..7ddf35d 100644 --- a/src/webterm/docker_exec_session.py +++ b/src/webterm/docker_exec_session.py @@ -247,8 +247,12 @@ class DockerExecSession(Session): self._stream.feed(text) if self._screen.dirty: self._change_counter += 1 - except Exception: - pass + except Exception as exc: + log.warning( + "Docker exec screen update failed (%s): %s", + type(exc).__name__, + exc, + ) async def _drain_pending_output(self) -> None: if not self._pending_output: diff --git a/src/webterm/terminal_session.py b/src/webterm/terminal_session.py index 3414dc1..0f51f76 100644 --- a/src/webterm/terminal_session.py +++ b/src/webterm/terminal_session.py @@ -189,9 +189,13 @@ class TerminalSession(Session): # Increment change counter when screen is modified if self._screen.dirty: self._change_counter += 1 - except Exception: + except Exception as exc: # Don't let pyte errors crash the session - pass + log.warning( + "Terminal screen update failed (%s): %s", + type(exc).__name__, + exc, + ) async def get_replay_buffer(self) -> bytes: """Get the contents of the replay buffer."""