Added selective debug suppression

"pipe" can get quite noisy (main reason was recursion because of output)
This commit is contained in:
Philip Trauner 2017-03-15 20:50:16 +01:00
parent 3061d5569b
commit 1a918b5843

View file

@ -285,7 +285,7 @@ def prepare_data(data):
class Shared:
def setup(self, routes, debug=False):
def setup(self, routes, debug_suppress_routes=None, debug=False):
self.routes = routes
self.routes[META_ROUTE] = Meta()
self.routes = create_routes(self.routes)
@ -297,6 +297,10 @@ class Shared:
# would fail during route lookup).
self.peer_exchange_routes = {META_ROUTE_INDEX : META_ROUTE}
self.peer_reverse_exchange_routes = reverse_dict(self.peer_exchange_routes)
if debug_suppress_routes != None:
self.debug_suppress_routes = debug_suppress_routes
else:
self.debug_suppress_routes = []
self.debug = debug
@ -326,7 +330,7 @@ class Shared:
m_route, self.address, self.port))
return
data = convert_data(message[METADATA_LENGTH:], data_type)
if self.debug:
if self.debug and route not in self.debug_suppress_routes:
data_repr = str(data).replace("\n", " ")
if len(data_repr) > 80:
data_repr = data_repr[:80] + "..."
@ -357,7 +361,7 @@ class Shared:
except KeyError:
Logging.error("'%s' is not a valid peer route." % route)
else:
if self.debug:
if self.debug and route not in self.debug_suppress_routes:
data_repr = str(data).replace("\n", " ")
if len(data_repr) > 80:
data_repr = data_repr[:80] + "..."
@ -368,9 +372,9 @@ class Shared:
class Server(WebSocket, Shared):
def setup(self, routes, websockets, debug=False):
def setup(self, routes, websockets, debug_suppress_routes=None, debug=False):
routes[PIPE_ROUTE] = ServerPipe()
super().setup(routes, debug=debug)
super().setup(routes, debug_suppress_routes=debug_suppress_routes, debug=debug)
self.websockets = websockets
self._last_websockets = self.websockets.copy()
self._peers = {}
@ -399,9 +403,9 @@ class Server(WebSocket, Shared):
class Client(WebSocketClient, Shared):
def setup(self, routes, debug=False):
def setup(self, routes, debug_suppress_routes=None, debug=False):
routes[PIPE_ROUTE] = DummyPipe()
super().setup(routes, debug=debug)
super().setup(routes, debug_suppress_routes=debug_suppress_routes, debug=debug)
self.override_methods()