Unverified Commit 2a1b13da authored by Kroese's avatar Kroese Committed by GitHub
Browse files

feat: Suppres shutdown messages (#1089)

parent fe6bf5b7
Loading
Loading
Loading
Loading
+11 −2
Original line number Diff line number Diff line
@@ -15,6 +15,7 @@ import time
from typing import Any, Deque, Dict, Optional, Tuple, cast

from qemu.qmp import QMPClient
from qemu.qmp.protocol import StateError

log = logging.getLogger(__name__)

@@ -677,7 +678,9 @@ class BalloonMonitor:
                try:
                    await self._update_balloon()
                except Exception as e:
                    if isinstance(e, (ConnectionError, BrokenPipeError, OSError)):
                    if isinstance(e, (ConnectionError, BrokenPipeError, OSError, StateError)):
                        if self._stop.is_set():
                            break
                        log.warning("QMP connection lost: %s. Reconnecting...", e)
                        await self._qmp_reconnect()
                    else:
@@ -692,7 +695,13 @@ class BalloonMonitor:
            if self.event_task:
                self.event_task.cancel()
            if self.qmp:
                qmp_logger = logging.getLogger("qemu.qmp")
                prev_level = qmp_logger.level
                qmp_logger.setLevel(logging.WARNING)
                try:
                    await self.qmp.disconnect()
                finally:
                    qmp_logger.setLevel(prev_level)

# ==========================================================
# Main Execution