diff --git a/pychromecast/controllers/heartbeat.py b/pychromecast/controllers/heartbeat.py index b028e6d8e..55a8e7ad1 100644 --- a/pychromecast/controllers/heartbeat.py +++ b/pychromecast/controllers/heartbeat.py @@ -2,6 +2,7 @@ from __future__ import annotations +import logging import time from . import BaseController @@ -28,6 +29,7 @@ def __init__(self) -> None: super().__init__(NS_HEARTBEAT, target_platform=True) self.last_ping = 0.0 self.last_pong = time.time() + self.logger = logging.getLogger(__name__) def receive_message(self, _message: CastMessage, data: dict) -> bool: """ diff --git a/pychromecast/socket_client.py b/pychromecast/socket_client.py index 96db21a89..bea33681c 100644 --- a/pychromecast/socket_client.py +++ b/pychromecast/socket_client.py @@ -686,7 +686,10 @@ def _route_message(self, message: CastMessage, data: dict) -> None: # route message to handlers if message.namespace in self._handlers: # debug messages - if message.namespace != NS_HEARTBEAT: + if ( + message.namespace != NS_HEARTBEAT + or self.heartbeat_controller.logger.isEnabledFor(logging.DEBUG) + ): self.logger.debug( "[%s(%s):%s] Received: %s", self.fn or "", @@ -870,7 +873,10 @@ def send_message( be_size = pack(">I", msg.ByteSize()) # Log all messages except heartbeat - if msg.namespace != NS_HEARTBEAT: + if ( + msg.namespace != NS_HEARTBEAT + or self.heartbeat_controller.logger.isEnabledFor(logging.DEBUG) + ): self.logger.debug( "[%s(%s):%s] Sending: %s", self.fn or "",