Mercurial > public > mercurial-scm > hg-stable
diff mercurial/sshpeer.py @ 35699:f7ef49e44d7c
sshpeer: add support for request tracing
The new 'devel.debug.peer-request' option now also display some information
about request going through ssh peer.
author | Boris Feld <boris.feld@octobus.net> |
---|---|
date | Fri, 12 Jan 2018 11:52:57 +0000 |
parents | b520c8f98e1e |
children | b0d2885c5945 |
line wrap: on
line diff
--- a/mercurial/sshpeer.py Fri Jan 12 10:41:03 2018 +0000 +++ b/mercurial/sshpeer.py Fri Jan 12 11:52:57 2018 +0000 @@ -283,6 +283,17 @@ def _callstream(self, cmd, **args): args = pycompat.byteskwargs(args) + if (self.ui.debugflag + and self.ui.configbool('devel', 'debug.peer-request')): + dbg = self.ui.debug + line = 'devel-peer-request: %s\n' + dbg(line % cmd) + for key, value in sorted(args.items()): + if not isinstance(value, dict): + dbg(line % ' %s: %d bytes' % (key, len(value))) + else: + for dk, dv in sorted(value.items()): + dbg(line % ' %s-%s: %d' % (key, dk, len(dv))) self.ui.debug("sending %s command\n" % cmd) self._pipeo.write("%s\n" % cmd) _func, names = wireproto.commands[cmd]