Mercurial > hg
changeset 42476:d0b8a3cfd732
tracing: extract tracing-active logic to separate function
I'm about to add support for counters, and want to avoid duplicating this
logic.
Differential Revision: https://phab.mercurial-scm.org/D6525
author | Augie Fackler <augie@google.com> |
---|---|
date | Wed, 12 Jun 2019 19:01:37 -0400 |
parents | ff562d711919 |
children | e658ac39fe41 |
files | hgdemandimport/tracing.py |
diffstat | 1 files changed, 10 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/hgdemandimport/tracing.py Wed Jun 12 19:00:46 2019 -0400 +++ b/hgdemandimport/tracing.py Wed Jun 12 19:01:37 2019 -0400 @@ -13,19 +13,23 @@ _pipe = None _checked = False -@contextlib.contextmanager -def log(whencefmt, *whenceargs): +def _isactive(): global _pipe, _session, _checked if _pipe is None: if _checked: - yield - return + return False _checked = True if 'HGCATAPULTSERVERPIPE' not in os.environ: - yield - return + return False _pipe = open(os.environ['HGCATAPULTSERVERPIPE'], 'w', 1) _session = os.environ.get('HGCATAPULTSESSION', 'none') + return True + +@contextlib.contextmanager +def log(whencefmt, *whenceargs): + if not _isactive(): + yield + return whence = whencefmt % whenceargs try: # Both writes to the pipe are wrapped in try/except to ignore